Java删除txt中文件中某一行数据 ,怎么实现?

问题描述:

txt文件的格式如下

RefereeView1/192.168.0.102
RefereeView2/192.168.0.104
ArtScore1/192.168.0.107
ArtScore2/192.168.0.114
ArtScore3/192.168.0.112
CompletionScore2/192.168.0.108
CompletionScore1/192.168.0.101
ArtScore4/192.168.0.100
DiffcultyScore1/192.168.0.109
RefereeEdit/192.168.0.105
RefereeView3/192.168.0.106

分析:

 1、 如果要删除任意数据的话,一般都要经过先检索、后处理的过程。
    如何提高检索速度是关键。
    其中可以为文件中的每行数据建立索引,如何建立索引,就要参考索引的使用方法了。

 

2、 可以将文件中的每行数据提取出来,放到指定的存储结构中,如链表、数组、Map等。
    使用Java中支持这些结构的API来处理每行数据,处理完毕后,
    再讲存储结构中的内容写回文件中。

3、不要真正的删除,因为删除没有什么好的方法,必须把整个文件再复制一次。
使用标记:例如把这一行的前多少个字节数据修改成标记的值,读取每一行时判断是否有删除的标记。
很多工具都这样做,当到例如半夜后启动一个线程把文件中被标记为删除的部分真正的删除。

posted @ 2013-06-07 19:28  月夜风2013  阅读(3225)  评论(0编辑  收藏  举报
合肥搬家公司 全自动包装机