Java处理文本数据
1 9.6333333333333333 27.733333333333334
4 24.133333333333333
4 12.766666666666667
5 17.933333333333334
5 17.4
8 13.233333333333333
8 11.933333333333334
11 31.1
11 30.2
12 16.9
13 24.766666666666666
18 31.133333333333333
18 13.133333333333333
如上数据所示,如何提取出每组数据的第二条?如果只有一条记录则照样输出。请各位达人帮忙解答一下! java --------------------编程问答-------------------- 何为每组数据的第二条?
Reader r;
try {
r = new FileReader("c:\\123.txt");
BufferedReader dr=new BufferedReader(r);
String line="";
while((line=dr.readLine())!=null){
System.out.println(line);
}
}
catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} --------------------编程问答--------------------
看左边的数字,有些是重复的。 --------------------编程问答-------------------- 全部一行一行读入到集合ArrayList<String>之类,循环集合对每一行位置从0到第一个空格位置的数据取值(indexof之类函数),取得这些值就看做判断重复的标记,再次循环这些标记的集合判断有否重复,有重复取重复2位置的数据。。。大概是这样写代码 --------------------编程问答--------------------
BufferedReader br = new BufferedReader(new FileReader("/a.txt"));
String line="";
while(null != (line = br.readLine())){
line = line.trim();
if(line.contains(" ")){ // 如果有两条数据
System.out.println(line.split(" ")[1]); // 输出第二条
}else{ // 如果只有一条数据
System.out.println(line); // 原样输出
}
}
补充:Java , Eclipse