重写文件上的行
问题描述:
我需要重写文件上的字符,或者删除一些行。有没有办法实现这一点,而不重写整个文件?重写文件上的行
例如:我需要在第10行用char“4”来改变字符“8”。
pollo
ciao fred
98/98/34 42ddw
4
10
1234567890
cristo
ciao liby
98/98/34 fre42ddw
8
20
123456789
答
看
int fseek (stream, offset, origin);
您可以移动到特定的偏移和书写符号存在。但要找到替代字符的偏移量,仍然需要先读取所有符号。
否 - 如果您需要在文件中添加或删除字符,则不可能不重写该文件 - 请参阅[从C语言文件中删除行](http:// stackoverflow。 com/questions/1151713/delete-a-file-in-c-language)等等。如果你只是在原地替换一个角色,这是可能的。 –