我想使用 Java 更新文本文件的特定部分。我希望能够扫描文件并选择要更新的特定行,有点像在数据库中,例如给定文件:
ID Value
1 100
2 500
4 20
我想插入 3 并更新 4,例如
ID Value
1 100
2 500
3 80
4 1000
有没有办法完成这个(看似)简单的任务?我知道您可以附加到文件,但我对随机访问更感兴趣
最佳答案
I know you can append to a file, but I am more interested in a random access
您正在尝试在文件中间插入和删除字节。你不能那样做。文件系统(通常)根本不支持这一点。您可以覆盖特定字节,但无法插入或删除它们。
如果您的记录是固定长度(以字节为单位),您可以通过随机访问来更新特定记录,但情况似乎并非如此。
您可以将整个文件加载到内存中,或者从原始文件中读取,并根据每行的情况将旧数据或新数据写入新文件。
关于Java - 覆盖文件的特定部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13400591/