android:用y字节替换文件开头的x个字节

时间:2012-05-22 12:40:35

标签: android file replace random-access

我想用y字节替换文件的前x个字节。那是x和y的长度不一样。 我试着复制到新文件。它工作,但大文件慢。我知道确切的替换长度可以使用RAndomAccessfile。但我无法将它用于我的目的。

非常感谢你的帮助。

2 个答案:

答案 0 :(得分:3)

如果xy不一样,你别无选择,只能写y然后写下文件的其余部分,即使你所做的只是将文件的其余部分向上移动y - x个字节。

答案 1 :(得分:2)

如果您迫切需要快速,那么您可以创建一个自己的随机访问接口,由一组不可变文件+不可变更改列表支持。如果您的应用程序有一些空闲时间,那么它可以将最后一个不可变提交点+更改列表合并到后台的新文件中。

变更清单可以像

一样简单
  • 上一个更改列表/提交点文件的路径
  • 要替换的偏移和长度
  • 替换数据

提交点只是一个完整的文件。