掌握输入输出流的使用
内容及要求:
1、现有举重成绩单score.txt:
姓名:张三,抓举成绩106kg,挺举成绩189kg
姓名:李四,抓举成绩108kg,挺举成绩186kg
姓名:王五,抓举成绩112kg,挺举成绩190kg
现要求按行读入成绩单,并在该行后加上运动员总成绩,然后再将该行写入一个名字为scorAnalysis.txt文件中。程序清单如下
//AnalysisResult.java
import java.io.*;
import java.util.*;
public class analysisResult {
public static void main(String args[ ]){
File fRead= new File("score.txt");
File fWrite=new File("scoreAnalysis.txt");
try{ Writer out= 代码1 /*创建指向fWriter 文件字符输出流对象out*/
BufferedWriter bufferWrite= 代码2 /*创建指向out的bufferRead流*/
Reader in= 代码3 //创建指向文件fRead的in流
BufferReader bufferRead= 代码4 /*创建指向in的bufferRead流*/
String str=null;
while((str=bufferRead.readLine())!=null){
double totalScore=Fenxi.getTotalScore(str);
str=str+"总成绩:"+totalScore;
System.out.println(str);
bufferWrite.write(str);
bufferWrite.newLine();
}
bufferRead.close;
bufferWrite.close();
}
catch(IOException e){
System.out.println(e.toString());
}
}
}
//Fenxi.java
import javautil.*;
public class Fenxi{
public static double getTotalScore(String s){
String regex="[^0123456789.]";
String digitMess=s.replaceAll(regex,"*");
StringTokenizer fenxi=new StringTokenizer(digitMess,"*");
double totalScore=0;
while (fenxi.hasMoreTokens()){
double score=Double.parseDouble(fenxi.nextToken());
totalScore=totalScore+score;
}
return totalScore;
}
}
产品经理不是经理
相关分类