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);
}