方法:如何解决CFindFile:FindNextFile找不到最后一个文件
展开全部
在网上搜索到的一些遍历算法不仅繁锁,而且存在抄袭现象,而且抄袭的对象有问题,因为他们忽视了一个FindNextFile的一个很重要的问题。在这里我把对问题的分析以及我的方法分享给大家。
首先说明一下,Windows把所有数据单元称为文件,目录(即文件夹)也不例外。它有一个宏定义FILE_ATTRIBUTE_DIRECTORY标记注明该文件记录的是文件系统信息,而不是用户数据。目录与普通文件的一个重要区别是目录存储的是别的文件的信息。而普通文件记录的才是用户想要存储的数据。
实践证明,当FindNextFile找到最后一个文件时,它的返回值是FALSE。所以这个返回值我认为需要重新理解:它表示下次再执行该方法时找不到当前目录下的其它文件记录,不是表示本次没有找到。如果我们把文件系统对一个一个的文件的记录理解为单向链表,那么返回值FALSE表示下一个结点是NULL。
首先说明一下,Windows把所有数据单元称为文件,目录(即文件夹)也不例外。它有一个宏定义FILE_ATTRIBUTE_DIRECTORY标记注明该文件记录的是文件系统信息,而不是用户数据。目录与普通文件的一个重要区别是目录存储的是别的文件的信息。而普通文件记录的才是用户想要存储的数据。
实践证明,当FindNextFile找到最后一个文件时,它的返回值是FALSE。所以这个返回值我认为需要重新理解:它表示下次再执行该方法时找不到当前目录下的其它文件记录,不是表示本次没有找到。如果我们把文件系统对一个一个的文件的记录理解为单向链表,那么返回值FALSE表示下一个结点是NULL。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询