我写了个递归来得到一个目录下的所有目录包括子目录下的文件,并记录一共查找得到多少个文件。
我在测试其他目录(如一般的游戏目录,一般程序的目录)的文件数和我在资源管理器看的一样,但我让这个程序去查找windows 下的文件发现文件数和我用资源管理器看的不同,少了300多个文件,请问这是什么问题?
谢谢大虾。
我在测试其他目录(如一般的游戏目录,一般程序的目录)的文件数和我在资源管理器看的一样,但我让这个程序去查找windows 下的文件发现文件数和我用资源管理器看的不同,少了300多个文件,请问这是什么问题?
谢谢大虾。
解决方案 »
- [献给想深入学习网络编程的朋友] C,C++网络编程学习简明指南
- mfc app wizard(dll) 与mfc app wizard(exe) 的区别
- 毕业设计是局域网管理系统
- ODBC 在MFC中连接SQL数据库
- 关于文件操作,请高手指点,谢谢!
- 有没有鼠标悬浮提示的方法
- 请问如何读写USB
- 这段代码为什么会这样???
- 怎样改变listBox里字体的颜色?请指教,高分诱惑!
- socket编程时用异步模式,在accept时,用一个循环,条件是 WSAGetLastError()==WSAEWOULDBLOCK,结果CPU占用率100%,难道异步模式不是这么
- 如何设置滚动条的滚动幅度?在线等。。。
- 类的成员函数和VC的函数同名怎么办?
这就是在没有目录("."和".."
if(ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY &&
strcmp(ffd.cFileName,".") &&
strcmp(ffd.cFileName,".."))
我程序在查找子目录当中的文件时用到了这样一个条件语句来判断文件,目的是排除".",".."和目录。不知道有没有用错?
这就是在没有目录(也排除"."和"..")下对文件查找的条件语句。
if(ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY &&
strcmp(ffd.cFileName,".") &&
strcmp(ffd.cFileName,".."))
if(ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY && ffd.cFileName[0] != '.')不过你那样好象也没错..
还有,我发现我的程序查找不到没标识属性的文件。例如readme.txt(没有标识--只读,隐藏,存档,系统,都没有选的).
是了,我换了个条件语句去查找使得更精确。
但windows这个目录还是很奇怪的,我用这个软件去查一时查到10389,一时查到10391,资源管理器总是看到10389.那是什么回事?
哪个条件语句如下:
if(!(ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY &&
strcmp(ffd.cFileName,".") &&
strcmp(ffd.cFileName,"..")) &&
strcmp(ffd.cFileName,".") &&
strcmp(ffd.cFileName,".."))
我想我的程序很占资源呀。
if(!(ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY &&
strcmp(ffd.cFileName,".") &&
strcmp(ffd.cFileName,"..")) &&
strcmp(ffd.cFileName,".") &&
strcmp(ffd.cFileName,".."))
时不正确,应该用ffd.cFileName[0] == "."