当前位置:编程学习 > JAVA >>

Java处理文本数据

1  9.633333333333333
3  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();
} --------------------编程问答--------------------
引用 1 楼 abcmsnet 的回复:
何为每组数据的第二条?
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);……
 
看左边的数字,有些是重复的。 --------------------编程问答-------------------- 全部一行一行读入到集合ArrayList<String>之类,循环集合对每一行位置从0到第一个空格位置的数据取值(indexof之类函数),取得这些值就看做判断重复的标记,再次循环这些标记的集合判断有否重复,有重复取重复2位置的数据。。。大概是这样写代码 --------------------编程问答--------------------
引用 楼主 lcl200803007 的回复:
1  9.633333333333333
3  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……


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
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,