硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2166|回复: 3
收起左侧

[RL-FlashFS] 用fdelete删除文件再新建文件,反复多次后就会导致所有文件都打不开

[复制链接]

3

主题

5

回帖

14

积分

新手上路

积分
14
发表于 2018-4-8 16:18:58 | 显示全部楼层 |阅读模式
不知道有没有人遇到过这样的情况,用fdelete删除一个文件再新建这个文件,反复多次后就会导致所有文件都打不开,跟踪不到文件系统内部的代码,原因不明啊,可有人支招?
-我很菜
回复

使用道具 举报

3

主题

5

回帖

14

积分

新手上路

积分
14
 楼主| 发表于 2018-4-9 09:35:21 | 显示全部楼层
已经找到错误所在了,原因是在fdelete之前我先是l_file = fopen(filename,"r"),判断是否存在文件,if存在就fdelete,但是没有fclose(l_file),所以在多次执行这段代码之后就出现了错误
回复

使用道具 举报

3

主题

5

回帖

14

积分

新手上路

积分
14
 楼主| 发表于 2018-4-9 09:41:07 | 显示全部楼层
还有一个问题是使用fdelete只是把文件名删除了,其实对于nand flash中存储的内容并没有删除,意味着如果我再次新建这个文件,里面的数据还是存在的,没有达到我想删除里面内容的初衷,请问有什么好的办法把flash中这个文件的内容清空
-我很菜
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106999
QQ
发表于 2018-4-9 11:19:43 | 显示全部楼层
梨落繁华心 发表于 2018-4-9 09:41
还有一个问题是使用fdelete只是把文件名删除了,其实对于nand flash中存储的内容并没有删除,意味着如果我 ...

FAT类文件系统就是这样的。就跟你电脑一样,为什么会有文件删除后的恢复软件,就是建立在这个基础上。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-14 08:45 , Processed in 0.282976 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表