社区
Linux/Unix社区
帖子详情
c语言如何实现彻底删除文件
FrankJT
2020-02-12 11:43:25
Hi:
我最近在做一个项目,其中对sd卡的操作,我需要实现文件的删除和彻底删除。
文件删除很简单,调用remove函数就可以了,彻底删除文件,我不知道该如何做。
linux的shred或者wipe命令可以实现,但是我不能用system(), 大家有什么建议么?
...全文
640
3
打赏
收藏
c语言如何实现彻底删除文件
Hi: 我最近在做一个项目,其中对sd卡的操作,我需要实现文件的删除和彻底删除。 文件删除很简单,调用remove函数就可以了,彻底删除文件,我不知道该如何做。 linux的shred或者wipe命令可以实现,但是我不能用system(), 大家有什么建议么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Golden_Chen
2020-02-21
打赏
举报
回复
如果SD是FAT格式的话, 文件删除只是把文件目录表的目录项用0xD5(应该是这个)标注,实际不动文件数据。 所以要彻底删除,你还得要把文件所在数据所在的所有扇区都清空。 你可以照这样思路做。
不过文件永久保存,就不好办了,如果SD不开启写保护的话,那理论上所以SD空间都可以被强制格式化的,而写保护没办法单独针对一块区域。一种办法就是把SD卡分成2两个分区, 一个分区不可见隐藏,另一个分区正常使用,但用分区软件,还是可以找到并删除的。
FrankJT
2020-02-12
打赏
举报
回复
还要实现永久保存。 我有个思路是,在sd卡建立一个永久保存的分区,格式化的时候不删除这个分区,这算永久保存。 对于要永久删除的文件,我建立一个分区,把该文件放到这个分区,然后将其格式化,这样就永久删除了。 这样的方法是否可行,或者还有什么好办法么,我感觉我这样有点蠢。
牛不才
2020-02-12
打赏
举报
回复
彻底删除,首先你要根据文件的元信息(inode),找到文件数据所在的块位置,然后把这些位置通通重写成0
文件
读取,写入(去除源
文件
内容)以及追加写入(保留原
文件
内容)
文件
读取,写入(去除源
文件
内容)以及追加写入(保留原
文件
内容)
C语言
删除
指定的
文件
的代码
把代码过程比较重要的代码做个珍藏,下面资料是关于
C语言
删除
指定的
文件
的代码。 #include <stdio.h> int main() { remove(“filename”); return 0; }
MD5算法
C语言
实现
课程名称:
C语言
实现
MD5算法 应用知识:
C语言
基础知识:流程结构,
文件
操作,位运算,函数,宏... 课程目的: 1、练习
C语言
知识综合运用 2、巩固
C语言
基础知识 3、了解MD5算法的基本原理 课程特点: 1、知识点讲解...
C语言
—遍历查找并
删除
文件
包括子
文件
准备阶段 在完成这个遍历
删除
任务之前,...首先remove()函数是用来
删除
文件
的 头
文件
:#include <stdio.h> remove()函数用于
删除
指定的
文件
,其原型如下: int remove(char * filename);成功则返回0,失...
C语言
实现
STL静态链表类,【YTU+2430+
C语言
习题+链表建立+插入+
删除
+输(4)
C语言
实现
链表节点的插入和
删除
2016年08月30 - /*链表节点的插入与
删除
编译环境:VC++ 6.0编译系统:windows XP SP3*/#include 用
c语言
完成一个双向链表的创建,插入,
删除
2014年09月13 - (1){printf("请选择您想要...
Linux/Unix社区
23,121
社区成员
74,508
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章