MFC中的CFileFind类的奇怪之处

原创 2005年04月25日 21:18:00
我在使用MFC的CFileFind 查找文件时,使用GetNextFile()获取下一个文件。处理完毕后,就移走该文件。当存在一个文件时其应该返回TRUE,然后你可以使用GetFileName来得到文件名、路径,但并不完全如此。在搜索的位置,还有一个文件匹配时,GetNextFile()就会返回FALSE,GetLastError()也会得到ERROR_NO_MORE_FILES,如果继续处理,也可以得到这最后一个文件的文件名,处理完成后,如果还继续的话,则GetNextFile返回的还是FALSE,这是好的,但使用GetFileName,还会获取一个文件名,但不是正确的,因为GetFileName返回的是CString类型,在系统运行时,则还可能前面的存储文件名的内存没有清除,则还会得到已处理过的文件名。这是就错误了。

关于GetNextFile,MSDN中的说明有一点:Nonzero if there are more files; zero if the file found is the last one in the directory or if an error occurred。

可能的原因是:CFileFind可能不支持其所搜索的目录动态变化,从开始查找,到最后处理完,该目录的文件不应该发生变化。

MFC中CFileFind类的应用

MFC中CFileFind类的应用在我们的生活中,我们经常碰到“新建工程或新建文件”的情形, 你知道这样的应用背后是怎么来判断你的新建文件名在你选择的路径下是否可行(没有重名)呢?? 函数功能...

MFC Windows应用程序学习之处

怎么说呢,如果说是MFC倒不如说是MFC Windows应用程序(他们到底是什么关系,网上是这样认为的: Windows程序设计一般是指用c语言编写windows应用程序,或叫做win32编程,MF...

华为C++/MFC面试题(附上个人答案,不当之处请指正)

原文地址:华为C++/MFC面试题(附上个人答案,不当之处请指正)作者:华仔103 PS:答案是本人随笔所写,可能不全甚至错误!    请不要盲目将其作为标准答案,不正之处,请指正,谢谢。 ...

C++/MFC-文件CFileFind

一、查找文件  CFileFind类:  例://c:\mydir\myfile.txt GetFileName 获取文件名 myfile.txt GetFilePath ...

wince中实现CFileFind类的功能

  • 2017年01月01日 20:18
  • 3KB
  • 下载

CFileFind类

1、CFileFind类的声明文件保存在afx.h头文件中。 2、该类的实现的功能:执行本地文件的查找(查找某个具体的文件,查找某类文件x*.x*,查找所有文件*.*) 3、CFileFind类是...

PHP PDO中不能使用limit,阿里云中limit的奇怪之处

1、PDO 中 limit 项目用到简单分页,开始利用PDO做。如下代码$data为array(0) {},未报错。将SQL语句复制到窗口运行却能查到数据。 $query = "SELE...

改善C++ 程序的150个建议学习之建议6:明晰逗号分隔表达式的奇怪之处

建议6:明晰逗号分隔表达式的奇怪之处 逗号分隔的表达式是从C继承而来的。它用一种特殊的运算符—逗号运算符将多个表 达式连接起来。逗号表达式的一般形式为: 表达式1,表达式2,表达式3......表达式...

php 继承的一个奇怪之处

内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MFC中的CFileFind类的奇怪之处
举报原因:
原因补充:

(最多只允许输入30个字)