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);關閉文件,否則會丟失數據