c语言中如何对文件的部分内容删除

c语言中如何对文件的部分内容删除,第1张

文件是顺序存储的,你用退格键不能完成删除作用,那是用于显示屏的方法。

第1种方法可以,但由于文件可能尺寸较大,无法一次性全部读入内存,还要用到分块读入、写。

普通办法是:

打开输入文件

打开输出文件(另一个文件名)

分块将输入文件内容读入,读入当前块遇到要删除字符在内存中删除

将当前块写到输出文件

依此处理所有块

关闭输出文件

关闭输入文件

删除输入文件或改名

将输出文件改名成输入文件

对于文件来说,在其中删除或添加内容是比较繁琐的工作。

1、打开Sublime Text软件,新建一个C语言文件,然后导入C语言库

2、接下来新建C语言的main函数,对文件的 *** 作都会在main函数中进行

3、接下来调用C语言的fopen函数对文件进行打开 *** 作

4、当打开文件以后就可以通过fgetc函数读取文件里面的内容

除非采用特殊的方式,否则是不可能实现这种效果的。

文件结构是不可能只把其中一部分删除掉,你要把后面的部分搬移到对应的hole上。

通常数据库文件中可以实现删除某掉记录,所采用的方法有,1、设置固定长度的数据结构,文件中每一项的长度是固定,通过在文件中对应项上修改删除标记位来达到删除数据的目的。 2、采用日志记录分析,文件的访问是通过日志来进行的,日志描述文件的状态,也就是说删除 *** 作时记录在日志内,由日志负责提供一个虚拟的文件。

通常楼主的这种要求,我们的做法是:1、在文件中,把要删除的部分后面的内容搬移到删除位置,调用api设置文件结尾位置。 2、如果要删除的东西很零散,搬移的效率会很低,会采用内存数据结构记录,然后再dump到硬盘上。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8051103.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存