与fseek
一起使用时,如何使fwrite
不会覆盖指定位置的内容?
我正在用
打开一个文件file = fopen(filename, "r+");
然后使用
fseek (file, pos, SEEK_SET);
使用
转到我需要的位置fwrite(text, 1, text_size, file);
写入数据。
示例:
说,我想在第3位添加'7':
abcdef
我希望这是
abc7def
答案 0 :(得分:0)
Fseek不会覆盖任何东西。如果你在fseek之后使用fwrite,fputs,fputc或类似的函数,你可以覆盖你所寻找的位置。
答案 1 :(得分:0)
您无法插入文件。实现这一目标的唯一方法是将文件的其余部分保存到某处,编写新内容,然后将文件的其余部分附加到保存它的位置。但是,您必须在要插入的内容后重写文件的整个部分。