文件的查找

来源:互联网 发布:杰视帮和凤凰美工 编辑:程序博客网 时间:2024/06/11 15:45

//定义一个文件查找句柄

HANDLE hFileFind;

 

//包含文件各种信息的结构体

WIN32_FIND_DATA filedata;

 

//找到第一个符合条件的文件

hFileFind = ::FindFirstFile(L"//Folder//*.dll", &filedata);

 

//dosomething()

 

//FindFirstFile返回的句柄继续查找下一个文件,直到搜完为止

while( ::FindNextFile(hFileFind, &filedata))

{

      //dosomething

}

   //最后关闭句柄

::FindClose(hFileFind);

 

 

WIN32_FIND_DATA结构体定义:

typedef struct _WIN32_FIND_DATAW {

              DWORD dwFileAttributes;              //文件的属性

              FILETIME ftCreationTime;                 //文件创建时间

              FILETIME ftLastAccessTime;              //文件上次被访问时间

              FILETIME ftLastWriteTime;                //上次文件上一次修改时间

              DWORD nFileSizeHigh;                    

              DWORD nFileSizeLow;               //文件的大小 

              DWORD dwOID;                              //文件标识符(Object identifier ofthe file

              WCHAR cFileName[ MAX_PATH];  //文件名

} WIN32_FIND_DATAW

 

typedef WIN32_FIND_DATAW WIN32_FIND_DATA;

 


 

WIN32_FIND_DATA这个结构体包含了对一个文件的丰富描述,我们可以通过这个结构体来对一个文件的各种属性进行修改。两个函数可以使用,SetFileAttributes(), SetFileTime()。另外,如果想修改文件名,可以调用MoveFile这个函数。