2010-08-10 20 views
0

我有一個二進制文件,我需要在開頭插入一個頭文件。我正在考慮打開一個新文件,寫入標題數據,然後將數據從二進制文件複製到這個新文件。由於二進制文件大約是1兆字節,使用fwrite製作這個文件有沒有什麼危險?一個特殊的問題就是無意中覆蓋數據,類似於如果使用get並且輸入比緩衝區長的話。合併兩個未知大小文件的潛在危險?

回答

1

沒有風險。分配一個給定大小的緩衝區,從源文件中讀入許多字節,將緩衝區寫回到目標文件。這些操作(文件讀取/文件寫入)都會佔用最大的字節數,只要緩衝區是您聲稱的大小,它就不會超出範圍。

此外,您描述的方法幾乎是唯一的方法來做到這一點。我從來沒有聽說過有一個「在這個文件的開頭插入這些字節」操作的文件系統。

+0

太棒了,謝謝! – Jade 2010-08-10 19:35:58