开发c语言日常记录之文件读写以及遍历
admin
2024-04-23 01:18:22
0

1.导包

#include 
#include 
#include 

 2.文件读取 

//根据地址读取内容 绝对地址 比如/sdcard/a.txt
void FileReadString(char *path,char *buf) {int fd = open(path, O_RDONLY);if (fd == -1) {printf("can not open the file\n");}char bufs[1024] = { "\0" };int len = read(fd, bufs, 1024);printf("%s\nlen=%d\n", bufs, len);strcpy(buf, bufs);close(fd);}调用方法:
char buff[1024];
FileReadString("/sdcard/0.txt", buff);
printf("buff========%s\n", buff);

3.文件存储 

//存储到某个文件 绝对地址 比如/sdcard/a.txt
void FileWriteString(char *path, char *bufs) {FILE *fd = fopen(path, "w+");/* 创建并打开文件 */if (fd){fputs(bufs, fd);fclose(fd);}
}调用方式:
FileWriteString("/sdcard/01.txt", "需要存储的字符串");

 4.文件删除

//文件删除功能
_Bool removeFile(char *path) {if (remove(path) == 0) {printf("Removed %s.\n", path);return 0;}else {perror("remove");return 1;}return 0;
}调用方式:
removeFile("/sdcard/0.txt");

5.创建文件夹 

//判断文件地址是否存在
int file_exist(char *path)
{if (access(path, F_OK) == 0) {return 0;}return -1;
}// 创建文件夹
void createFolder(char *path)
{// 文件夹不存在则创建文件夹if (file_exist(path) == -1){mkdir(path);}
}调用方式:
createFolder("/sdcard/test/");

6.遍历文件夹

#include       /*标准输入输出定义*/
#include      /*标准函数库定义*/
#include      /*Unix 标准函数定义*/
#include      /*字符串功能函数*/int trave_dir(char* path, char filename[][256])
{int len = 0;DIR *d; //声明一个句柄struct dirent *file; //readdir函数的返回值就存放在这个结构体中struct stat sb;if (!(d = opendir(path))){printf("error opendir %s!!!\n", path);return -1;}while ((file = readdir(d)) != NULL){//把当前目录.,上一级目录..及隐藏文件都去掉,避免死循环遍历目录if (strncmp(file->d_name, ".", 1) == 0)continue;strcpy(filename[len++], file->d_name); //保存遍历到的文件名	printf("len==%d\n", len);}closedir(d);return len;
}使用方式:
int i;
char filenames[256][256];
int lent = trave_dir("/sdcard/test/", filenames);
for (i = 0; i < lent; i++)
{if (filenames[i] != NULL) {printf("%s\t", filenames[i]);}
}

 我是在linux+arm主板上运行的,所以我的地址是以sdcard来使用

 

相关内容

热门资讯

银行板块早盘逆势活跃,银行ET... 7月13日早盘,市场震荡调整,银行板块逆势活跃。截至午间收盘,中证银行指数上涨1.5%,香港证券指数...
2026常州展厅设计公司深度分... 企业展厅在中期追加预算,并不是少数项目的偶发现象,而是很多企业在启动阶段就埋下的结果。尤其在常州这类...
测试市场极限!美国6家超大型A... 随着科技股、人工智能(AI)股近期调整,美股科技巨头发行的巨额规模债券近期也遭遇抛售压力。 今年,六...
2026年美团商家费用全面拆解... “上美团做个店,光开户和推广一年就要烧掉辆车?”这是2026年不少本地商家在数字化浪潮前最大的焦虑。...
金价、油价突发! 7月13日早盘, 国际油价大幅高开,截至北京时间6:22,布伦特原油涨3.55%, 报78.71美元...
英伟达CEO黄仁勋称AI智能体... 【CNMO科技消息】据CNMO科技了解,英伟达CEO黄仁勋近日在一场专访中谈及智能体与人的区别时表示...
李小冉徐佳宁被曝离婚 两人于2... 搜狐娱乐讯 7月13日,有八卦媒体发文爆料称李小冉和徐佳宁在前两年就已分居,并已于去年11月在北京办...
静待“七巨头”财报表现,纳指1... 文丨斯嘉特 David Scutt 编辑丨吴海珊 最近3个多月以来,纳斯达克100指数从3月下旬触及...
这3种早餐正在给血管“添堵”,... 现代保健报讯:“周大夫,我去年刚放了一个支架,这才一年,怎么又胸闷了?” 兰州慧源堂中医诊所里,60...
原创 2... 上周五,现货黄金小幅下行,随后在4100关口附近来回震荡,最终收跌0.11%,报4119.27美元。...
36氪首发 | 港中大博士、前... 作者 | 乔钰杰 编辑 | 袁斯来 硬氪获悉,深圳光之跃迁科技有限公司(Lumisition Rob...
期货交易中哪些因素导致成交量和... 在期货交易里,成交量和持仓量的变化是投资者极为关注的重要指标,它们能够反映市场的活跃度与投资者的参与...
重磅合资|双强联手,凯伦防火涂... 伴随国内基建升级、绿色建筑普及以及建筑消防安全规范化发展,高性能、环保型特种建材已然成为行业刚需。 ...
《扩大消费“十五五”规划》:扩... 国务院批复同意《扩大消费“十五五”规划》。《规划》提出,发展数字消费。促进数字消费高质量发展,深入推...
A股点燃PCB投资热,慧联电子... 随着PCB需求爆发,A股市场上相关并购、资产重组涌现。近日,新锐股份宣布拟以8亿元收购慧联电子80%...
基金忠言|新锐量化直线跳水,暴... 图片来源:视觉中国 蓝鲸新闻7月13日讯(记者 祁和忠)5月中旬以来,平安新锐量化突然直线跳水,单位...
原创 如... 作为知名经济学家,尤其是在金融市场流量很大的经济人物,其本身要做到完全独立其实难度不小,一旦其价值增...
服务出海提速意味着什么 商务部数据显示,今年1月份至5月份,知识密集型服务出口6677.5亿元,增长12.2%,其中,知识产...
期货交易中怎样在期货交易中平衡... 在期货交易里,合理地处理持仓与资金的关系是关乎交易成败的关键因素。期货市场具有高风险性和高杠杆性,若...
两市遭遇“黑色星期一”,红利飘... 7月13日两市遭遇“黑色星期一”,科技板块等全线重挫,三大指数低开低走。银行、煤炭等红利资产逆市坚挺...