C++中如何删除txt文件中指定的一行
2个回答
展开全部
1.文件小的话,完整读入内存,在内存中删除,然后以写方式清空原始文件并覆盖;
2.文件大的话,先逐段读取,确认要删除的起止位置,然后将之后的内容分段读出并覆盖到前面,最后截去文件多余的长度;
3.如果磁盘足够大,也可以从头读取原始文件并转存到一个缓存文件,遇到要删除的地方则跳过不写,所有内容都写入缓存文件后,将缓存文件整个copy覆盖原始文件,删除缓存文件.
c++没有提供像编辑器那样提供那么简单快捷的直接删除方法,只能够覆盖写过去.
2.文件大的话,先逐段读取,确认要删除的起止位置,然后将之后的内容分段读出并覆盖到前面,最后截去文件多余的长度;
3.如果磁盘足够大,也可以从头读取原始文件并转存到一个缓存文件,遇到要删除的地方则跳过不写,所有内容都写入缓存文件后,将缓存文件整个copy覆盖原始文件,删除缓存文件.
c++没有提供像编辑器那样提供那么简单快捷的直接删除方法,只能够覆盖写过去.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询