JAVA:一起读写文件

sha*_*ath 6 java file-io file java-io

我试图读取一个java文件并同时修改它.这就是我需要做的:我的文件格式如下:

aaa
bbb
aaa
ccc
ddd
ddd
Run Code Online (Sandbox Code Playgroud)

我需要通读文件并获取出现次数的计数并修改重复项以获取以下文件:

aaa -  2
bbb -  1
ccc -  1
ddd -  2
Run Code Online (Sandbox Code Playgroud)

我尝试使用它RandomAccessFile来做到这一点,但无法做到这一点.有人可以帮我解决这个问题的代码吗?

小智 8

如果你不同时做两件事,那就容易多了.最好的方法是遍历整个文件,计算散列中每个字符串的所有出现次数,然后将所有结果写入另一个文件.然后,如果需要,将新文件移到旧文件上.

您永远不想同时读取和写入同一文件.每次进行写入时,文件中的偏移量都会发生偏移,读取光标将无法跟踪.