VC++ 使用 _access函数判断文件或文件夹是否存在
_access函数
int_access( constchar*path, intmode ); int_waccess( constwchar_t*path, intmode );
参数
path
文件或目录路径。
mode
读/写特性。
返回值
如果文件包含特定模式,每个函数返回0。函数返回-1,则名称文件不存在或不具有特定模式;在这种情况下,如下表errno所示设置。
EACCES
访问被拒绝:文件权限的设置不允许指定的访问权限。
ENOENT
未找到文件名或路径。
EINVAL
无效参数。
备注
当使用文件,_access函数确定指定的文件或目录是否存在并且具有指定值的特性mode。在使用与目录,_access确定指定的目录是否存在;只有在Windows2000和更高版本的操作系统上,所有目录读取和写入权限。
最后给大家简单汇总下VC++用于判断文件文件夹是否存在的方法
推荐实例例:
if(::GetFileAttributes(m_filename)==-1){//文件不存在}else{//文件存在}
1.使用_access函数,函数原型为int_access(constchar*path,intmode);
2.使用CreateFile函数,函数原型为:HANDLECreateFile(LPCTSTRlpFileName,//pointertonameofthefileDWORDdwDesiredAccess,//access(read-write)modeDWORDdwShareMode,//sharemodeLPSECURITY_ATTRIBUTESlpSecurityAttributes,//pointertosecurityattributesDWORDdwCreationDisposition,//howtocreateDWORDdwFlagsAndAttributes,//fileattributesHANDLEhTemplateFile//handletofilewithattributesto//copy);
3.使用FindFirstFile函数,函数原型为:HANDLEFindFirstFile(LPCTSTRlpFileName,//pointertonameoffiletosearchforLPWIN32_FIND_DATAlpFindFileData//pointertoreturnedinformation);
4.使用GetFileAttributes函数,函数原型如下:DWORDGetFileAttributes(LPCTSTRlpFileName//pointertothenameofafileordirectory);
5.使用ShellLightweightUtilityAPIs函数PathFileExists()专门判断文件和目录时否存在的函数文件名可读性比较强还可以判断目录是否存在Header:DeclaredinShlwapi.hImportLibrary:Shlwapi.lib以上的各种方法供参考,函数具体用法需参见MSDN