用C语言或C++语言判断文件是否存在?

Python018

用C语言或C++语言判断文件是否存在?,第1张

一、判断文件夹是否存在:\x0d\x0a1.用CreateDirectory(".//FileManege",NULL)如果文件夹FileManege不存在,则创建。\x0d\x0a2.或者if(_access(".//FileManege",0)==-1),表示FileManege不存在。\x0d\x0a3.或者BOOL PathIsDirectory(LPCTSTR pszPath)二、判断文件是否存在:\x0d\x0a1.用if((file=fopen(".//FileManege//F//F.dat","rb"))==NULL)\x0d\x0afile=fopen(".//FileManege//F//F.dat","ab+")// 先判断有无文件,没的话新建一个\x0d\x0a2.用if(_access(".//FileManege//F//F.dat",0)==-1),表示文件不存在。 函数int _access( const char *path, int mode )可以判断文件或者文件夹的mode属性\x0d\x0amode=00//Existence only\x0d\x0amode=02//Write permission\x0d\x0amode=04//Read permission\x0d\x0a需要包含头文件。

可以使用库函数 access,该函数声明于头文件 io.h,

函数原型为:

int access(const char *filename, int amode)

amode参数为0时表示检查文件的存在性,如果文件存在,返回0,不存在,返回-1。

这个函数还可以检查其它文件属性:

06 检查读写权限

04 检查读权限

02 检查写权限

01 检查执行权限

00 检查文件的存在性

例如 if(access("D:\\123.txt", 0) == -1) printf("文件不存在")

C语言中access函数功能:确定文件或文件夹的访问权限。即,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。用法: int access(const char *filenpath, int mode)或者int _access(const char *path, int mode )参数说明:filenpath文件或文件夹的路径,当前目录直接使用文件或文件夹名备注:当该参数为文件的时候,access函数能使用mode参数所有的值,当该参数为文件夹的时候,access函数值能判断文件夹是否存在。在WINNT 中,所有的文件夹都有读和写权限mode要判断的模式#defineR_OK 4#defineW_OK 2#defineX_OK 1#defineF_OK 0具体含义如下:R_OK只判断是否有读权限W_OK只判断是否有写权限X_OK判断是否有执行权限F_OK只判断是否存在