慕神8447489
2023-03-03 17:13:01
整個代碼如下:#include <afx.h>#include <iostream.h>void main(){CFileFind finder;BOOL bWorking = finder.FindFile("*.*");while (bWorking){bWorking = finder.FindNextFile();cout << (LPCTSTR) finder.GetFileName() << endl;}}
3 回答

慕妹3146593
TA貢獻1820條經驗 獲得超9個贊
BOOL bWorking = finder.FindFile("*.*");
是查找所有的文件和文件夾,"."和".."是windows中兩個特殊的文件夾,分別代表本級目錄和上級目錄。
如果想區別文件夾和文件,可以通過finder.IsIsDirectory()來判斷找到的是否文件夾。
如果文件和文件夾都想查詢,僅僅不想找"."和"..",則需要直接判斷finder.GetFileName()的值來區別。

哈士奇WWW
TA貢獻1799條經驗 獲得超6個贊
.表示當前文件夾,..表示上一級文件夾,這是從DOS傳承下來的。比如DOS命令
cd ..
是返回上一層文件夾就是這么來的。
用CFileFind::IsDots函數來判斷返回的是不是這兩個文件夾,還可以用CFileFind::IsDirectory來判斷返回的這個是不是文件夾。

慕斯709654
TA貢獻1840條經驗 獲得超5個贊
在windows系統中,當前文件夾中,用 . 文件夾名表示。
上一層文件夾 用 .. 文件夾名表示 。所以在搜索的時候,會出現這倆個文件夾。
在界面中只是隱藏了。
類似 c++ 中的。 include "..\debug" 表示上一層中的debug 文件夾。
include ".\debug" 表示當前文件夾的debug文件夾。
添加回答
舉報
0/150
提交
取消