2010-11-19 39 views
4

我使用java.io.FileFileInputStream & FileOutputStream創建了一個文件。假設我想更改文件中某些字節的值(例如從字節15到35)而不更改文件的大小。我試過創建一個RandomAccessFile對象,然後使用RandomAccessFile.seek移動到第15個字節,寫入我的新字節,然後關閉文件。該文件已更改大小。這種方法有什麼問題,以及如何成功完成?如何覆蓋文件中的一些字節?

+5

給我們展示一些代碼 – unbeli 2010-11-19 15:35:56

+1

是的,請告訴我們你正在使用的代碼snippit。 – jjnguy 2010-11-19 15:37:26

+2

我假設你沒有嘗試同時使用FileOutputStream和RandomAccessFile。 – 2010-11-19 15:38:28

回答

4

你確定你正在向RandomAccessFile寫一個字節嗎?如果你調用的方法:

file.write(35); 

然後,它實際上是寫35int也就是4個字節。如果你想寫一個字節嘗試:

file.writeByte(35);