c语言文件内容修改
㈠ 怎么用c语言对文件操作用特定内容替换其中某些内容
如果只想修改文件一部分。
可以使用函数int fseek( FILE *stream, long offset, int origin );来定位你的文件指针。
文件指针的位置决定你读写文件的起始位置。
其中参数origin :表示从哪里开始偏移,值有:
SEEK_SET: 文件开头
SEEK_CUR: 当前位置
SEEK_END: 文件结尾
参数offset:表示偏移的字节数,正数表示正向偏移,负数表示负向偏移。
比如
你先读取文件内容,同时做判断,找到你要改的内容时,调用函数
fseek(fp,10L,SEEK_CUR);把文件指针移动到离当前指针位置10个字节的地方(我们假设当前位置偏移10个字节就是你要修改的起始位置);
这样你之后的读写都是从这个位置开始。
不过要注意的是,你从这位置开始写新的内容,可以覆盖原内容,所以如果新的内容比你想覆盖的内容长的话,会把后面你想保留的内容也覆盖掉。
这种思路,你想要实现修改指定内容,还需要把修改内容之后的数据也读出来备份,再一起写进去。
所以最简单,还是直接生成新的文件替换原文件。
㈡ C语言文本文件中的具体内容能被修改吗 谢谢啦!
当然能.不过不清楚你说的是C源文件还是说用C程序打开的文件.如果说是C源文件,用普通的记事本就可以改.如果是读取文件,那就要用关于文件的函数fopen, fclose, fprintf, fscanf, fputs, fgetc, fgetc, fputc等
㈢ 怎样在c语言中修改已录入的文件信息,谢谢
用FILE定义文件指针
FILE
*fp;
fp=fopen("文件名","a");//往原文件追加数据
fp=fopen("文件名","w");//重建文件,采用这种方式之前你应该将原文件中的数据都存储到内存中
操作完毕后应该用fclose(fp);关闭文件,否则会丢失数据