5
我在C中使用fopen()和fwrite()可以找到所有內容,並重新開始寫入或追加到文件尾部。如果我需要在文件中進行一些偏移並覆蓋幾個字節,該怎麼辦?如何用fwrite()覆蓋偏移量Y上的X個字節?
這是可能的一些功能?
我在C中使用fopen()和fwrite()可以找到所有內容,並重新開始寫入或追加到文件尾部。如果我需要在文件中進行一些偏移並覆蓋幾個字節,該怎麼辦?如何用fwrite()覆蓋偏移量Y上的X個字節?
這是可能的一些功能?
您可以使用"rb+"
選項打開文件,然後使用fseek
和SEEK_SET
轉到特定位置。 rb+
以讀取和寫入的二進制文件形式打開它(文件必須存在才能成功 - 它不會創建新文件)。
這將覆蓋只是我想要的字節,不會追加? – 2010-04-12 15:30:01
現在的問題是,它會丟棄文件的其餘部分嗎? – 2010-04-12 15:31:14
@Nazgulled:是的 - SEEK_SET定位到文件中特定的字節偏移量。 SEEK_CUR也可以用於尋找當前位置的偏移量。 – 2010-04-12 15:31:40