如果我有一个大文本文件,是否可以在常量或接近恒定时间内替换第n个字符?我所知道的最好的解决方案是使用bufferedReader.skip来获取我想要的索引,然后使用readLine()来获取每一行,并再次附加它们(在更改我读取的第一行之后)。对于大型文件,这可能会花费很多时间,所以如果有更快的方法,我可以选择这样做
答案 0 :(得分:1)
您要查找的是随机访问文件。请参阅this以获取参考。您可以使用seek()
方法转到第n个字符,然后使用许多不同的write()
方法之一来操作数据。请确保以写入模式打开文件,否则会出现异常。