Q: 19.14 我如何插入或删除一行,在文件(或记录)的中间?


A: 一般没有办法这样做。通常的办法就是重写该文件。

如果你需要向一个现有文件中插入数据,可以尝试这些被选方案:

你应该考虑把记录标记为“删除”,让读文件的代码忽略它们,而不是真的能去删除它们。(你可以运行一个子程序,去重写该文件,最后丢弃需要被删除的记录。或者,如果记录全是同样的长度,你可以用最后的记录覆盖需被删除的,然后截断该文件)

参加问答12.30和19.13。

补充链接:更多阅读


(This Chinese translation isn't confirmed by the author, and it isn't for profits.)

Translator : jhlicc@gmai1.c0m
Origin : http://c-faq.com/osdep/insdelrec.html