1

我想使用 BufferedOutputStream 写入 ~20000 字节以替换偏移 OFFSET 处相同数量的文件字节。我尝试使用以下代码执行此操作:

headerOffset = 12000;
headerSize = 20000;
byte[] ba = new byte[20];
FileOutputStream os;
BufferedOutputStream bos;
try {
  os = new FileOutputStream('file.dat');
  bos = new BufferedOutputStream(os);
  bos.write(ba, headerOffset, headerSize);
  os.flush();
} catch (IOException e) { e.printStackTrace(); }

但是,这会导致 'file.dat' 被 ba 的内容覆盖,覆盖整个文件并使其仅与 .dat 一样大ba。我究竟做错了什么?

4

0 回答 0