c语言创建文件、文件夹、判断文件内容是否为空
linux c开发一定会遇到创建文件,废话少说,代码如下,不足之处请多指教!
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdbool.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <libgen.h>
#include <stdlib.h>int isFileExisted(const char *pathname){if(access(pathname,F_OK) == 0){return true;}return false;
}void makeDirectory(const char *path){if((strcmp(path,".") == 0) || (strcmp(path,"/")==0))return ;if(isFileExisted(path))return ;else{char *duppath = strdup(path);const char *dir_name = dirname(duppath);makeDirectory(dir_name);free(duppath);}if(mkdir(path,0766) < 0){perror("mkdir");exit(1);}return;
} int createFile(const char*filename,int mode){if(creat(filename,mode) < 0){if(errno == ENOENT){char *dup_filename=strdup(filename);char *dir = dirname(dup_filename);makeDirectory(dir);free(dup_filename);creat(filename,mode);}return false;}return true;
}int isFileNull(const char *filename){FILE *fp = fopen(filename,"r");if(fp == NULL)return -1; int val = 0;char ch = fgetc(fp);if(ch == EOF)val = 1;fclose(fp);return val;
}
补充:
dirname函数和basename函数,使用man 3 dirname 查看。
c语言创建文件、文件夹、判断文件内容是否为空相关推荐
- JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤...
JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...
- JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤
JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...
- python打开一个不存在的文件时-python判断文件是否存在,不存在就创建一个的实例...
python判断文件是否存在,不存在就创建一个的实例 如下所示: try: f =open("D:/1.txt",'r') f.close() except IOError: f ...
- Hdfs系列之:查看hdfs文件状态,判断文件是否损坏,修复hdfs损坏文件
Hdfs系列之:查看hdfs文件状态,判断文件是否损坏,修复hdfs损坏文件 一.查看Hdfs文件状态 二.参数详解 三.修复hdfs损坏文件 一.查看Hdfs文件状态 命令格式为: hdfs fsc ...
- java 判断文件夹是否存在 没有则创建_java中实现判断文件是否存在,不存在则创建...
一.判断文件是否存在,不存在则创建File file = new File("d:\\test.txt"); if (!file.exists()) { try { file.cr ...
- qdir 自动创建多级目录_Qt 判断文件或文件夹是否存在及创建文件夹
1. 判断文件夹是不是存在 参数说明: QString fullPath;//文件夹全路径 /*方法1*/ bool isDirExist(QString fullPath) { QDir dir(f ...
- C语言创建删不掉的文件夹
上一篇博客写了一个杀不死的进程,现在再写一个删不掉的文件夹(文件同理),所谓删不掉不是真的删不掉而是删掉后马上重新创建.代码如下: #include <stdio.h> #include ...
- java 不存在就创建,java怎么实现判断文件是否存在,不存在就创建的方法
java怎么实现判断文件是否存在,不存在就创建的方法 发布时间:2020-06-23 11:29:37 来源:亿速云 阅读:118 作者:Leah 这篇文章运用简单易懂的例子给大家介绍java实现判断 ...
- win32 c语言检测文件是否存在,判断文件、目录是否存在:C、C++、Windows API、 boost...
一.判断文件是否存在 #ifdef WIN32 #include //C (Windows) access #else #include //C (Linux) access #endif #incl ...
- linux shell脚本判断文件行数,判断文件是否存在的shell脚本代码
实现代码一. #!/bin/sh # 判断文件是否存在 # lilSzqFnk:www.jb51.net # date:2013/2/28 myPath="/var/log/httpd/&q ...
最新文章
- Leetcode 剑指 Offer 53 - I. 在排序数组中查找数字 I (每日一题 20210928)
- composer 使用指南
- Cognos报表展示图片小技巧
- AD19 add pins to nets错误_《英雄联盟手游》错误代码问题大全 LOL的错误代码都是什么意思...
- 挑战练习6.4 报告编译版本
- Java中的基本类型和引用类型变量的区别
- 使用Maven构建Struts2项目
- 重建Windows 7的图标缓存
- 第十二章——SQLServer统计信息(3)——发现过期统计信息并处理
- java 病毒查杀_Java清除exe文件中的病毒
- PHP:pack、unpack用法大全
- 【Maven打包报错解决方案】Using ‘UTF-8‘ encoding to copy filtered resources.
- 新 iPhone 去“刘海”、AR/VR 头显或成 One More Thing,苹果秋季发布会前瞻!
- 太原理工大学计算机专业老师,郝晓燕 - 太原理工大学 - 信息与计算机学院
- IBIS建模方法之自己编写IBIS模型文件
- 从欧几里得到拓展欧几里得
- 物理层的传输介质和设备
- 自动驾驶引发的致死车祸,没有一方是无辜的
- MapBox加载不同风格的地图
- .Net Core编译或者发布时多语言包问题
热门文章
- 商用计算机cpu,面向商业用户!AMD速龙II B22商用CPU评测
- Rust 正式发布八周年纪念日 2023.5.15
- Unity Vector3.Dot(VectorA, VectorB)
- 文件编码识别工具icu4j
- 如何解决undefined reference to `bblib_idft_burst_fxp'编译时函数未定义问题
- Tensorflow 代码解析
- 查归档日志文件每小时生成量
- 使用sphinx-doc优雅的书写html和项目介绍,包含restructureText常用语法
- 你负责看比赛,其他的放着我来 | 苏宁体育赛事直播频道化运营关键技术
- 你知道的都是错的:十分钟了解完CRM