【发布时间】:2019-06-12 02:24:52
【问题描述】:
通过 JAVA,我通过InputStream 和BufferedReader 定期读取不断变化的文本文件。
例如,
[a minute ago]
test.txt = abcde
[now]
test.txt = cdefg
(a,b be deleted / f,g add)
我阅读了过去的所有文件并完成了将它们保存到“e” 当我定期重新启动程序时, 我想从'e'之后读取并保存当前文件以避免重复。 (我只想阅读和存储 f.g.)
首先,我尝试过的唯一方法 = 从当前文件中搜索过去文件中的最后一个“e” 并跳到'e' 然后阅读并保存。 当然,它可以正常工作。
但是,呃,例子是abcdefg。按字母顺序排列,不重复。假设它经常重复
例如,
test.txt = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
如果你搜索“a”,你会发现我上次在过去的文件中读到的“a”是什么样的。冗余值过多。 所以,你试过的方法不可用。
【问题讨论】:
-
你的问题没有代码不清楚。 避免重复是什么意思?为什么不替换值?
-
一分钟前我已经读完了'e'。现在文件,这意味着在'e'之后读取而不读取'e'。因为 a,b,c,d,e 是重叠的。
标签: java ftp inputstream bufferedreader