189 8069 5689

c语言监测目录存在函数 c语言监测目录存在函数吗

C语言,判断一个文件是否存在

你贴的这个函数PathFileExists并不是C语言提供的库函数,而是windows系统提供的系统调用,如果你是初学者,尽量用C语言提供的库函数来实现功能,你可以这样:

10年积累的成都做网站、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有阳泉免费网站建设让你可以放心的选择与我们合作。

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

有问题请继续追问啊

C语言access函数判断绝对地址下的文件存在问题

access 返回值是0的时候,表示存在,而返回-1的时候,表示失败。所以你的用法没问题,错误的是你对返回值的判断,应该是

if(access(_Filename,0) == 0)

printf("存在");

else

不存在。

C语言判断指定文件是否存在

头文件:io.h

功 能: 确定文件或文件夹的访问权限。即,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。

用 法: int access(const char *filenpath, int mode); 或者int _access( const char *path, int mode );

参数说明:

filenpath

文件或文件夹的路径,当前目录直接使用文件或文件夹名

备注:当该参数为文件的时候,access函数能使用mode参数所有的值,当该参数为文件夹的时候,access函数值能判断文件夹是否存在。在WIN NT 中,所有的文件夹都有读和写权限

mode

要判断的模式

在头文件unistd.h中的预定义如下:

#define R_OK 4 /* Test for read permission. */

#define W_OK 2 /* Test for write permission. */

#define X_OK 1 /* Test for execute permission. */

#define F_OK 0 /* Test for existence. */

具体含义如下:

00 只判断是否存在

02 只判断是否有写权限

04 只判断是否有读权限

06 判断是否有读并且有写权限

程序例

#includestdio.h

#includeio.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, 0) == 0);

}

头文件:io.h

功 能: 确定文件或文件夹的访问权限。即,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。

用 法: int access(const char *filenpath, int mode); 或者int _access( const char *path, int mode );

参数说明:

filenpath

文件或文件夹的路径,当前目录直接使用文件或文件夹名

备注:当该参数为文件的时候,access函数能使用mode参数所有的值,当该参数为文件夹的时候,access函数值能判断文件夹是否存在。在WIN NT 中,所有的文件夹都有读和写权限

mode

要判断的模式

在头文件unistd.h中的预定义如下:

#define R_OK 4 /* Test for read permission. */

#define W_OK 2 /* Test for write permission. */

#define X_OK 1 /* Test for execute permission. */

#define F_OK 0 /* Test for existence. */

具体含义如下:

00 只判断是否存在

02 只判断是否有写权限

04 只判断是否有读权限

06 判断是否有读并且有写权限

程序例

#includestdio.h

#includeio.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, 0) == 0);

}

C语言查文件夹目录的函数请问C语言有什么查文件夹目

opendir

加上

finddir

这两个函数 可以遍历一个文件夹下面的所有文件节点

根据节点属性 可以判断是文件 还是文件夹。

具体用法 自行百度。 很多选项

c语言判断文件夹是否存在

使用c语言库中的_access()函数判断文件夹是否存在。该函数的参数中文件夹路径中不允许由空格。因此下面的代码运行错误。 其实检查的是e盘的my文件夹。

代码:#include io.h

#include stdio.h

#include stdlib.h

void main( void ){/* Check for existence */

可以使用windows.h中的函数 CreateDirectory("E:\\my programs\\testDir\\testDir\\11", NULL);运行成功。


分享标题:c语言监测目录存在函数 c语言监测目录存在函数吗
文章路径:http://cdxtjz.cn/article/hphchc.html

其他资讯