c语言c文件是否存在
❶ c语言中指定路径怎么检测是否存在 一个文件夹
这个简单啦,用 CreateDirectory 函数创建那个目录,如果目录已经存在了,那么创建必然失败
❷ 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 判断是否有读并且有写权限
程序例
#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, 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 判断是否有读并且有写权限
程序例
#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, 0) == 0);
}
❸ 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语言判断文件是否存在
用函数access,头文件是io.h,原型:
int access(const char *filename, int amode);
amode参数为0时表示检查文件的存在性,如果文件存在,返回0,不存在,返回-1。
这个函数还可以检查其它文件属性:
06 检查读写权限
04 检查读权限
02 检查写权限
01 检查执行权限
00 检查文件的存在性
在UNIX和VC下实验成功。
好处是 fopen(..,"r")不好,当无读权限时一不行了。
而这个就算这个文件没有读权限,也可以判断这个文件存在于否
存在返回0,不存在返回-1
#include <stdio.h
int main(){
printf ("%d",access("111",0));
--------------------------------------------------------------------------------------------
#include <io.h
#include <stdio.h
#include <stdlib.h
void main( void ){/* Check for existence */
if( (_access( "ACCESS.C", 0 )) != -1 ){printf( "File ACCESS.C exists
" );
/* Check for write permission */
if( (_access( "ACCESS.C", 2 )) != -1 )
❻ 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);
}
❼ 用C语言或C++语言判断文件是否存在
一、判断文件夹是否存在:
1.用CreateDirectory(".//FileManege",NULL);如果文件夹FileManege不存在,则创建。
2.或者if(_access(".//FileManege",0)==-1),表示FileManege不存在。
3.或者BOOL PathIsDirectory(LPCTSTR pszPath);二、判断文件是否存在:
1.用if((file=fopen(".//FileManege//F//F.dat","rb"))==NULL)
file=fopen(".//FileManege//F//F.dat","ab+"); // 先判断有无文件,没的话新建一个
2.用if(_access(".//FileManege//F//F.dat",0)==-1),表示文件不存在。 函数int _access( const char *path, int mode );可以判断文件或者文件夹的mode属性
mode=00;//Existence only
mode=02;//Write permission
mode=04;//Read permission
需要包含头文件<io.h>。
❽ 怎样让c语言判断文件是否存在
FILE * fp;
fp=fopen("h:\\abc\\x.txt","r");
if(fp==NULL)
{
//不存在
}
else
{
fclose(fp);
}
可以把上述代码封装成一个函数。
其实也可内以考虑用容Windows api 来进行判断
❾ 判断文件是否存在 c语言 函数
排版後如下: int access(const char* szPathName){ #ifdef _WIN32 if ( _access(szPathName, 0) != 0 ) return -1; #else if ( access(szPathName, F_OK) != 0 ) return -1; #endif return 0; } 這是用到 preprocessor. 用在跨平台(platform)的各種編譯器. 各平台的 .h 會不同. 在微軟的平台會定義 _WIN32 這個符號. 所以這段話就成為 int access(const char* szPathName){ if ( _access(szPathName, 0) != 0 ) return -1; return 0; } 在其它平台不會定義 _WIN32 這個符號. 所以這段話就成為 int access(const char* szPathName){ if ( access(szPathName, F_OK) != 0 ) return -1; return 0; }
❿ c语言中指定路径怎么检测是否存在 一个文件夹
这个简单啦,用
CreateDirectory
函数创建那个目录,如果目录已经存在了,那么创建必然失败