本文共 1251 字,大约阅读时间需要 4 分钟。
char exist_file1(const char *path){
return fopen(path, "r")!= NULL; char exist_file2(const char *path){
return access(path,0) ==0; char exist_file3(const char *path){
fp.open(path,std::ios::in); printf("%d\n",exist_file1(path)); printf("%d\n",exist_file2(path)); printf("%d\n",exist_file3(path)); ==========
============== C语言中access函数
头文件:io.h 功能:确定文件或文件夹的访问权限。即,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。 用法: int access(const char *filenpath, int mode); 或者int _access(const char *path, int mode ); 参数说明: filenpath 文件或文件夹的路径, 直接使用文件或文件夹名 程序例: #include <stdio.h> #include <io.h> int file_exists(char *filename); int main(void) { printf("Does NOTEXIST.FIL exist: %s\n", file_exists("NOTEXISTS.FIL") ? "YES" : "NO"); return 0; } int file_exists(char *filename) { return (access(filename, F_OK) == 0); } 备注:当该参数为文件的时候,access函数能使用mode参数所有的值,当该参数为文件夹的时候,access函数值能判断文件夹是否存在。在WINNT 中,所有的文件夹都有读和写权限 mode 要判断的模式 在头文件unistd.h中的预定义如下: #defineR_OK 4 #defineW_OK 2 #defineX_OK 1 #defineF_OK 0 具体含义如下: R_OK只判断是否有读权限 W_OK只判断是否有写权限 X_OK判断是否有执行权限 F_OK只判断是否存在 转载地址:http://ycixi.baihongyu.com/