c - 如何在不覆盖文本的情况下将 "push"一个单词(字符串)到文件中的给定位置(编程 c)

标签 c

我想知道如何更新现有文件,并在给定位置添加单词。

假设我的文件看起来像:

this the first line in the file

我想在位置 6 中添加单词“is”,这样文件将如下所示:

this is the first line in the file

实现该目标的最佳方法是什么? fopen模式应该是什么? 假设我的文件太大而无法复制到内存,或者创建一个临时克隆

谢谢!

最佳答案

没有神奇的“中间插入”打开模式。你必须自己做。

如果内存放不下,并且您不想/不能创建临时文件,则可以“从底部”重写它。 (即读取最后一个“ block ”,将其写回所需的数量,重复。)

关于c - 如何在不覆盖文本的情况下将 "push"一个单词(字符串)到文件中的给定位置(编程 c),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6539748/

相关文章:

c - 如何解决 TCP 服务器地址已在使用错误

c++ - 为什么 malloc 不返回?

c - GTK+ 2 改变GtkCheckButton的标签颜色

c - 通过引用发送指向指针的指针

在C中创建多个进程

c - 试图理解c中的宏定义

c - 如何从科学记数法解析长双

c - 在结构中使用指针

c - 程序在循环中重复时跳过 "gets(string)"?

c - 如何检查我是否正确实现了 C 库函数?