package test; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.HashSet; public class Set { public static void main(String[] args) { try { doit(); } catch (Exception e) { e.printStackTrace(); System.out.println("程序出错"); } } public static void doit() throws Exception{ BufferedInputStream fis = new BufferedInputStream(new FileInputStream(new File("E:\\01.txt"))); BufferedReader reader = new BufferedReader(new InputStreamReader(fis,"utf-8"),5);// 用5M的缓冲读取文本文件 BufferedWriter writer = new BufferedWriter(new OutputStreamWriter( new BufferedOutputStream(new FileOutputStream("1.txt")))); String line = ""; HashSet<String> set = new HashSet<String>(); while(( line=reader.readLine())!=null){ set.add(line.trim()); } for (String string : set) { System.out.println(string); writer.write(string); } } } 大致这样
[quote=引用 5 楼 qq_15599389 的回复:] 数据量上千条
数据量上千条
如果数据量不太大完全可以用1楼的方法
4.9w+
社区成员
8.5w+
社区内容