我有一个包含大量零的文件,根据要求,文件中的零无效。我正在使用RandomAccessFile api来查找文件中的数据。是否可以使用相同的api从文件中删除所有零。
答案 0 :(得分:4)
您必须流式传输文件并将内容(减去零)写入单独的临时文件。然后,您可以关闭并删除原始文件,并将新文件重命名为旧文件名。这是这个特定用例的最佳选择。
答案 1 :(得分:0)
您可以使用RandomAccessFile来读取文件'数据,当您到达需要更改数据的点时,您可以使用相等的字节数覆盖现有的字节数。如果新值与旧值的长度完全相同,则为
使用RandomAccessFile时,它的难度和同样复杂,当大小为2时,一个被改变而新值不同。它涉及大量的搜索,读取和写入以移回数据
尝试读取整个文件,更改必须更改的位并写入新文件。您可以一次处理一行或将整个文件读入内存,修改它并将其全部重新写回来。以下列方式执行编辑是个好主意: