原文链接:https://www.cnblogs.com/Anker/p/3349672.html
判断一个文件是否存在:
#include <iostream>
#include <unistd.h>
using namespace std;
// 判断文件或文件夹是否存在
//int access(const char *pathname, int mode);
/*
mode取值:
F_OK 测试文件是否存在
R_OK 测试读权限
W_OK 测试写权限
X_OK 测试执行权限
*/
int is_file_exist(const char *file_path)
{
if(file_path==NULL)
return -1;
if(access(file_path,F_OK)==0)
return 0;
return -1;
}
int main()
{
cout<<is_file_exist("./mk")<<endl;
cout<<is_file_exist("./m")<<endl;
return 0;
}
No.6 /*文件处理之一般处理*/
1.进入文件夹(设置工作文件夹):
chdir(LPTSTR path);
SetCurrentDirectory(LPCTSTR lpPathName);
2.文件删除:
BOOL DeleteFile(LPTSTR lpFileName);
3.文件复制:
BOOL CopyFile(LPCTSTR lpExistingFileName,LPCTSTR lpNewFileName,BOOL bFailIfExists);其中参数bFailIfExists告诉系统当目标文件存在时如何操作,当bFailIfExists为true时,如果目标文件存在,则函数执行失败;当bFailIfExists为false时,如果目标文件存在,则覆盖目标文件。
4.文件重命名:
BOOL RenameFile(const AnsiString OldName, const AnsiString NewName);
5.返回文件的完整的路径名和文件名:
AnsiString ExpandFileName(AnsiString FileName);
6.返回指定文件的文件名:
AnsiString ExtractFileName(AnsiString FileName);
7.返回指定文件的扩展名:
AnsiString ExtractFileExt(AnsiString FileName);
8.创建新文件夹:
BOOL CreateDirectory( LPCTSTR lpPathName,LPSECURITY_ATTRIBUTES lpSecurityAttributes);lpSecurityAttributes为安全属性。
9.移动存在的文件或目录:
BOOL MoveFile(LPCTSTR lpExistingFileName,LPCTSTR lpNewFileName);
10.创建文件(即打开文件):
CreateFile(...);
11.关闭文件:
CloseHandle();
12.判断文件是否存在:
BOOL PathFileExists(LPCSTR pszPath)