读入一个txt文件,然后存入到一个List当中,现在把List里面的成员 进行选择性的输出到一个新的txt里面。
Distance
Num
6032
6046
6060
LA DAME
08:04
09:14
10:24
355
La Belle
08:04
09:14
10:24
200
Lechten
16:29
17:39
18:59
Distance
Num
7021
7035
7049
输出结果是讲蓝色的数据相匹配 为 08:04 16:29
09:14 17:39
10:24 18:59 这样的形式 请教大侠如果写?
------解决方案--------------------
简单一点的做法,新建两个List,分别存储出发时间和到达时间
List ladame = new ArrayList();
List lechten = new ArrayList();
然后对你的总list进行遍历,
将LA DAME节点后面的时间格式节点加入到ladame 中,
将Lechten节点后面的时间格式节点加入到lechten中,
输出文本文件的时候,
每行分别从ladame 和lechten中取同序号节点输出即可。
------解决方案--------------------
正则+读文件
- Java code
import java.io.File;import java.io.FileNotFoundException;import java.util.HashSet;import java.util.Scanner;import java.util.Set;public class Test { public static void main(String[] args) throws FileNotFoundException { Set<String> set = new HashSet<String>(); Scanner scanner = new Scanner(new File("a.txt")); while (scanner.hasNextLine()) { String line = scanner.nextLine().trim(); if (line.matches("\\d+:\\d+")) { set.add(line); } } scanner.close(); System.out.println(set); }}