1. c语言,判断一个文件是否存在
你贴的这个函数PathFileExists并不是C语言提供的库函数,而是windows系统提供的系统调用,如果你是初学者,尽量用C语言提供的库函数来实现功能,你可以这样:
int exist(char *file) //传入想要判断的路径字符串指针
{
FILE *fp;
fp=fopen(file,"r"); //fopen是一个C库函数,用于打开文件,"r"是只读模式,在这种模式下,如果文件存在,则能成功以只读模式打开,fopen返回一个非0的文件描述符,如果文件不存在,则fopen返回NULL(NULL意思是空)。正好可以利用这一点来判断文件是否存在
if(fp=NULL)
return 0; //不存在返回0
else
{
fclose(fp); //存在的话,要先把之前打开的文件关掉
return 1; //然后返回1
}
}
这样,你就可用这里定义的exist函数判断文件是否存在了。比如
if(exist("a.txt")==0)printf("不存在!");
else printf("存在!");
如果你真想用PathFileExists这个函数,那么也很简单,LPCTSTR你可以简单理解为就相当于char*,这是windows封装的一个数据类型。_in是一个修饰符,表示参数是传入给PathFileExists用的而不是由PathFileExists传出来的。这个函数可以这样用:
if(PathFileExists("a.txt")==FALSE)printf("不存在!");
else printf("存在!");
用这个函数时注意加头文件<windows.h>
有问题请继续追问啊
2. 用纯C语言怎么判断某个文件是否存在
如果你知道文件名和路径的话; 直接用 fopen 是C的标准库函数。 参数为FILE * fopen(const char * path,const char * mode); 路径为完整路径, mode 为打开方式, 是只读方式打开,还是读写方式打开这些。
如果你只知道文件名, 不知道路径, 我猜你想要个类似于windows 里面的 搜索的。。。 这个说来话长了。。
再或者, 你知道路径, 不知道文件名?
那个, 要用系统的API 来干这个事情了。不用系统级的高级函数, 搞不定了。因为这个是整个文件系统的事情了。。
3. c语言怎么查找制定目录下的文件是否存在
C语言中用OPEN函数就可以判断出指定目录下的文件是否存在。
比如:
#include<stdio.h>
main()
{
FILE *fp;
if((fp=fopen("c:\\filechk.txt","r"))==NULL)printf("this file is not exist";//文件不存在
else
printf("Open sucess");
close(fp);
}