总结一下关于文件和文件夹操作的API,便于以后查询。
判断文件夹是否存在:
bool bExist = PathFileExists(Path);
创建文件夹:
CreateDirectory(Path, NULL);
删除文件夹:
RemoveDirectory(Path);
复制文件到特定文件夹:
// 拷贝文件A到B,如果B已经存在,就覆盖(FALSE)
_stprintf_s(fileA, _T("%s\\%s"), PathA, FileName);
_stprintf_s(fileB, _T("%s\\%s"), PathB, FileName);
CopyFile(fileA, fileB, FALSE);
查找特定格式文件(以遍历问价夹中ini文件为例):
// 遍历所有ini文件
CFileFind fileFinder;
CString cMasterPath;
CString FileName;
bool bFound = true; //判断是否成功找到文件
bool isIniExit = fileFinder.FindFile(cMasterPath + "\\*.ini"); //修改" "中内容指定查找不同类型文件
while (isIniExit && bFound) //当存在ini文件时, 遍历所有文件
{
bFound = fileFinder.FindNextFile(); //第一次执行FindNextFile是选择到第一个文件,以后执行为选择到下一个文件
if (fileFinder.IsDirectory()) //找到的是文件夹,则结束本次查找
{
continue;
}
else
{
FileName = fileFinder.GetFileName(); //保存文件名,包括后缀名
// 在此处添加对找到文件的处理
将所有文件复制到Default文件夹中
TCHAR fileA[256], fileB[256];
_stprintf_s(fileA, _T("%s\\%s"), PathA, FileName);
_stprintf_s(fileB, _T("%s\\%s"), PathB, FileName);
CopyFile(fileA, fileB, FALSE); //拷贝文件A到B,如果B已经存在,就覆盖
}
}
fileFinder.Close();