map查找文件里面重复的行,并输出第一次出现的行号

来源:互联网 发布:qq西游刷数据 编辑:程序博客网 时间:2024/05/17 05:58
package cn.edu.henu.test.mytest;import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;import java.util.HashMap;/** * 查找文件里面重复的行,并输出第一次出现的行号。 */public class LessionSystemArraycopy {public static void main(String[] args) throws IOException {BufferedReader reader = new BufferedReader(new FileReader("E:/test.txt"));String strline = "";int row = 1;HashMap<String, Integer> myHT = new HashMap<String, Integer>();Integer rowLastFound;while ((strline = reader.readLine()) != null) {// 尝试查找以前是否存在rowLastFound = myHT.get(strline);          // 找到if (rowLastFound != null) {// 如果是第一次找到if (rowLastFound > 0) {System.out.println(strline + "," + rowLastFound);// 将行数设置为-1,避免后面重复输出myHT.put(strline, -1);}// 重复找到不做处理} else {// 新行,没有重复的myHT.put(strline, row);}row++;}reader.close();}}


0 0
原创粉丝点击