C语言判断文件夹或者文件是否存在的方法

方法一:access函数判断文件夹或者文件是否存在

函数原型: int access(const char *filename, int mode);

所属头文件:#include <io.h>

filename:可以填写文件夹路径或者文件路径

mode:0 (F_OK) 只判断是否存在

2 (R_OK) 判断写入权限

4 (W_OK) 判断读取权限

6 (X_OK) 判断执行权限

用于判断文件夹是否存在的时候,mode取0,判断文件是否存在的时候,mode可以取0、2、4、6。 若存在或者具有权限,返回值为0;不存在或者无权限,返回值为-1。

错误代码

EACCESS 参数pathname 所指定的文件不符合所要求测试的权限。

EROFS 欲测试写入权限的文件存在于只读文件系统内。

EFAULT 参数pathname指针超出可存取内存空间。

EINVAL 参数mode 不正确。

ENAMETOOLONG 参数pathname太长。

ENOTDIR 参数pathname为一目录。

ENOMEM 核心内存不足

ELOOP 参数pathname有过多符号连接问题。

EIO I/O 存取错误。

特别提醒:使用access()作用户认证方面的判断要特别小心,例如在access()后再做open()的空文件可能会造成系统安全上的问题。

实例:

#include <stdio.h>

#include <io.h>

int main(void)

{

if ( !access("C://windows",0) )

puts("C://windows EXISITS!");

else

puts("C://windows DOESN'T EXISIT!");

return 0;

}

方法二:fopen函数判断文件是否存在

函数原型:FILE *fopen (char *filename, char *type);

filename:文件路径

type:打开文件的方式(有r、w、r+、w+、a、rb、wb等等)

用于判断文件是否存在可以使用 r 或者 rb ,因为使用 其它方式的话,可能会自动建立文件。 返回值为NULL(打不开)和正数(能打开)。

特别提醒:用这种方法做出的判断是不完全正确的,因为有的文件存在,但是可能不可读。

C语言创建目录、文件夹

1. 调用Windows API函数 CreateDirectory():
   CreateDirectory("D:\\MyDir", NULL);

2. 调用C运行库函数mkdir():
   mkdir("D:\\MyDir");

3. 调用system命令md:
   system("md D:\\MyDir");

c语言中如何判断文件是否存在相关推荐

  1. linux c 判断文件是否存在,C语言中如何判断文件是否存在

    C语言中如何判断文件是否存在 方法一:access函数判断文件夹或者文件是否存在 函数原型: int access(const char *filename, int mode); 所属头文件:io. ...

  2. c语言 测试文件存在,c语言 file如何判断文件是否存在

    c语言中如何判断文件是否存在 一般情况下,我们可以使用函数stat(), access() 和fopen()来检验文件是否存在,但是由于文件权限的问题,有时可能不像结果所言,可能不是因为文件不存在,而 ...

  3. java语言怎样判断文件夹_JAVA语言之如何判断文件,判断文件夹是否存在的代码...

    本文主要向大家介绍了JAVA语言之如何判断文件,判断文件夹是否存在的代码,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 一.判断文件是否存在,不存在则创建File file = ne ...

  4. R语言中读取xlsx文件的方法

    R语言中读取xlsx文件的方法 安装包 install.packages("openxlsx") library(openxlsx) 文件名+sheet的序号 data<- ...

  5. C语言两个同名头文件,C lang: C语言中两个头文件引入相同的头文件(Header.h)

    C lang: C语言中两个头文件引入相同的头文件(Header.h) C lang: C语言中两个头文件引入相同的头文件(Header.h) [var1] For example: Header.h ...

  6. c语言两个字母如何比较,c如何比较两个字符 C语言中怎么判断两个字符相同

    可以使用库函数strcmp判断,具体如下: strcmp是C语言比较字符串的库函数,形式为int strcmp(char *a, char *b); 该函数会对a和b的每个字符,按照ascii码值比较 ...

  7. c语言中用于判断ch是否是字符的表达式,最新C语言复习题集资料

    精品文档 C语言复习题集 一. 判断题 1-1.C语言程序是从源文件的第一条语句开始执行的. 正确答案:F 1-2.C语言中的变量名不区分大小写. 正确答案:F 1-3.若变量定义为double x; ...

  8. 在c 语言中怎么建立文件,c语言——文件的创建与建立

    今天给大家分享的是有关文件的创建与读取的语法,事实上,c语言中对于这方面的已经有相当经典且应用相当广泛的语法了,但是我今天想讲一讲关于c++中的相关语法,以下是代码: 首先是文件的创建: # incl ...

  9. python 检查文件是否存在_Python中如何判断文件是否存在?

    这里介绍三种判断文件或文件夹是否存在的方法,分别使用os模块.Try语句.pathlib模块. 1.使用os模块 os模块中的os.path.exists()方法用于检验文件是否存在. import ...

最新文章

  1. python 修改计算机名_静心学数据分析002-python基础
  2. Linux系统轻量级监控工具monitorix和munin安装
  3. AI一分钟 | 豪华太空酒店预计2022年前开业;彭蕾卸任蚂蚁金服董事长,井贤栋接任;京东推出一秒能写千条文案的AI系统
  4. 增大模型依然有用,DeepMind用2800亿参数的Gopher,测试语言系统极限
  5. 【HTML】处理<br>换行符追加到前端换行无效的问题 --- html中渲染的字符串中包含HTML标签无效的处理方法,字符串中包含HTML标签被转义的问题 解决
  6. 洛谷P1119 灾后重建
  7. linux线程同步(2)-条件变量
  8. java如何停止函数循环_在Java中使用break来退出循环是不好的做法吗?
  9. Java 8 StringJoiner
  10. java的parse方法_Java即时类| parse()方法与示例
  11. form data和request payload的区别
  12. NOIP2016DAY1题解
  13. 机器学习-DBSCAN聚类算法
  14. IDEA SpringBoot引入外部jar并打包
  15. passwd修改用户密码
  16. 全国高校人工智能选修课该怎么上?附赠全套PPT
  17. USACO 1月 2021-2022 January Contest Bronze 题解
  18. 英国脱欧对中国光伏产业的短期及长期影响
  19. 人大金仓数据Windows安装教程
  20. 用计算机弹小星星的教程,职业歌手教你从零开始学吉他《小星星》傻瓜式教学...

热门文章

  1. 关于小程序页面在苹果手机上会出现一滑动整个页面会跑的问题的解决办法
  2. git配置取消代理_git 设置和取消代理
  3. 科技圈晒开工福利!2019一起定个小目标!
  4. rtmp之302重定向
  5. 用iphone设置邮箱,显示imap服务器没有响应,请检查
  6. 如何在不安装字体的情况下使用字体(字体解析库)
  7. 综合专题学期实训IV综合报告
  8. 使用Sakura Frp 将本地VNCServer端口映射到公网上
  9. 【数学建模相关】matplotlib画多个子图(散点图为例 左右对照画图)
  10. 通过 域控服务器 访问客户端“计算机管理”