CFileFind
MFC类CFileFind执行本地文件查找,是CGopherFileFind和CFtpFileFind的基类;后两类用于Internet文件查找。CFileFind包括的成员函数有开始查找、定位文件、返回标题名或路径。对于Internet查找来说,GetFileURL返回文件的URL。
CFileFind是为另两类查找特殊服务器设计的MFC类的基类,CGopherFileFind在Gopher服务器上工作,CFtpFileFind在FTP服务器上工作,这些类为用户查找文件提供了一种无缝机制,与服务器协议、文件类型、地点、本地机器或远程服务器无关。
以下代码将当前目录下的文件枚举出来并打印每个文件名:
CFileFind finder
BOOL bWorking = finder.FindFile("*.*");
while(bWorking)
{
bWorking = finder.FindNextFile( );
cout <<(LPCTSTR) finder.GetFileName( ) <<endl;
}
为使示例简单,此代码使用标准C++库函数cout类,cout行可由调用CListBox::AddString来代替。
#include <afx.h>
请参阅:
CFtpFileFind,CGopherFileFind,CInternetFile,CGopherFile,CHttpFile
CFileFind类的成员
构造函数CFileFind构造一个CFileFind对象。
属性GetLength获取找到文件的长度,以字节为单位GetFileName获取找到文件的名字GetFilePath找到文件的全路径GetFileTitle获取找到文件的标题,标题不包括扩展内容GetFileURL获取找到文件的URL,包括文件路径GetRoot获取找到文件根目录GetCreationTime获取文件创建时间GetLastAccessTime获取文件最后一次打开的时间GetLastWriteTime文件最后改变和存储的时间MatchesMask指定要找的文件的属性IsDots查看文件名是否是包含"."或"..",以表明它的确是一个目录IsReadOnly文件是否是只读IsDirectory文件是否是目录IsCompressed文件是否是压缩IsSystem文件是否是系统文件IsHidden文件是否是隐藏IsTemporary文件是否是临时的IsNormal文件是否是常规的(无其它属性)IsArchived文件是否是档案
操作Close关闭查找请求FindFile查找一个目录中的指定文件FindNextFile从FindFile以前调用开始继续下一查找
MFC Library Reference
CFileFind Class
Performs local file searches and is the base class for CGopherFileFind and CFtpFileFind, which perform Internet file searches.
搜索本地文件并且是CGopherFileFind 和 CFtpFileFind的基类,这两个类是用来在internet上进行文件搜索。
此文件包含在Header: afx.h里面。
例子:The following code will enumerate all the files in the current directory, printing the name of each file:(下面的代码将会列举所有的在当前目录下的文件,并且将他们的文件名输出)
CFileFind finder;
BOOL bWorking = finder.FindFile("*.*");
while (bWorking)
{
bWorking = finder.FindNextFile();
cout << (LPCTSTR) finder.GetFileName() << endl;
}