linux c 判断文件是否存在,C语言中如何判断文件是否存在
C语言中如何判断文件是否存在
方法一:access函数判断文件夹或者文件是否存在
函数原型: int access(const char *filename, int mode);
所属头文件: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
#include
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(打不开)和正数(能打开)。
特别提醒:用这种方法做出的判断是不完全正确的,因为有的文件存在,但是可能不可读。
linux c 判断文件是否存在,C语言中如何判断文件是否存在相关推荐
- C语言两个同名头文件,C lang: C语言中两个头文件引入相同的头文件(Header.h)
C lang: C语言中两个头文件引入相同的头文件(Header.h) C lang: C语言中两个头文件引入相同的头文件(Header.h) [var1] For example: Header.h ...
- c语言 获取文件修改时间,C语言中用于修改文件的存取时间的函数使用
C语言utime()函数:修改文件的存取时间和更改时间头文件: #include #include 定义函数: int utime(const char * filename, struct utim ...
- R语言中读取xlsx文件的方法
R语言中读取xlsx文件的方法 安装包 install.packages("openxlsx") library(openxlsx) 文件名+sheet的序号 data<- ...
- c语言两个字母如何比较,c如何比较两个字符 C语言中怎么判断两个字符相同
可以使用库函数strcmp判断,具体如下: strcmp是C语言比较字符串的库函数,形式为int strcmp(char *a, char *b); 该函数会对a和b的每个字符,按照ascii码值比较 ...
- bak文件转oracle文件,如何在Oracle 11g中恢复.bak文件(How to restore .bak file in oracle 11g)...
如何在Oracle 11g中恢复.bak文件(How to restore .bak file in oracle 11g) 我有Oracle 11g备份文件(.bak文件)如何在Oracle 11g ...
- c语言中如何判断文件是否存在
C语言判断文件夹或者文件是否存在的方法 方法一:access函数判断文件夹或者文件是否存在 函数原型: int access(const char *filename, int mode); 所属头文 ...
- c语言中用于判断ch是否是字符的表达式,最新C语言复习题集资料
精品文档 C语言复习题集 一. 判断题 1-1.C语言程序是从源文件的第一条语句开始执行的. 正确答案:F 1-2.C语言中的变量名不区分大小写. 正确答案:F 1-3.若变量定义为double x; ...
- python文件定位函数_C语言中文件定位函数总结
C语言中文件定位函数主要是:fseek, ftell, fsetpos, fgetpos. 先来讲前两个函数,这是最基本的定位函数: fseek函数:能把文件指针移动到文件任何位置,其原型是:int ...
- linux怎么查看一个bam文件,生信分析过程中这些常见文件的格式以及查看方式你都知道吗?...
原标题:生信分析过程中这些常见文件的格式以及查看方式你都知道吗? 生信分析过程中,会与很多不同格式的文件打交道,除了原始测序数据 fastq 之外,还需要准备基因组文件 fasta 格式和基因注释文件 ...
最新文章
- 每日一皮:据说PM就是这样忍受你的!
- Linux_Environment_Red Hat 卸载OpenJDK ,安装Orcl JDK 及 NTFS-3g
- 关于c++ pair自己遇到的一个问题?为何不一样?为何第一个程序不能返回pair内数组的值呢?(已经解决)
- 判断客户端是电脑还是手机
- 疯子的算法总结(一) 位运算(快速幂、快速乘)
- JVM垃圾收集和优化
- C++实现简单的信息管理系统
- 【LeetCode160】相交链表
- Gartner 容器报告:阿里云与 AWS 并列第一,领先微软、谷歌
- lazarus的动态方法和虚拟方法
- xp系统wep服务器,iis 6.0 完整安装包 适用xp
- 牛逼!分享一款基于 SpringBoot 的微信点餐系统(附源码)
- 训练序列与导频序列的概念辨析
- 程序设计与数据结构_周立功【读书笔记】
- 【一些有关GraN-DAG的知识点总结】
- 房屋出租系统(第二版)
- 【基础】Linux 常用操作
- 385高校毕业设计选题
- 常见的Http状态码以及其代表的意义
- 95年计算机专业的电脑,电脑怀旧98年至今20多年买的第一台电脑配置