使用Java更改文件中单个字节的最佳方法是什么?我已经用几种方式实现了这一点.一个使用所有字节数组操作,但这对可用内存量非常敏感,并且不会超过50 MB左右(即我不能分配100MB的byte []而不会出现OutOfMemory错误).我还用另一种方式实现了它的工作和扩展,但它感觉非常hacky.
如果你是一个java io大师,你不得不与非常大的文件(200-500MB)竞争,你怎么能接近这个?
谢谢!
我使用RandomAccessFile,寻找我想改变的位置并写下变化.
如果我想要做的只是改变一个字节,我就不会费心将整个文件读入内存.我使用a RandomAccessFile
,seek
对有问题的字节进行编写,然后关闭文件.