【问题描述】
现有如下格式的成绩单(文本格式)score.txt。
name:zhangsan,shuxue 72,wuli 67,yingyu 70
name:lisi,shuxue 92,wuli 98,yingyu 88
name:wangwu,shuxue 68,wuli 80,yingyu 77
要求按行读取成绩单。并在该行的后面加上该同学的总成绩。然后将该行写入到一个名字为scoreAnalysis.txt的文件中。
【score.txt输入形式】
name:zhangsan,shuxue 72,wuli 67,yingyu 70
name:lisi,shuxue 92,wuli 98,yingyu 88
name:wangwu,shuxue 68,wuli 80,yingyu 77
【scoreAnalysis.txt输出形式】
name:zhangsan,shuxue 72,wuli 67,yingyu 70 zongFen:209.0
name:lisi,shuxue 92,wuli 98,yingyu 88 zongFen:278.0
name:wangwu,shuxue 68,wuli 80,yingyu 77 zongFen:225.0
【评分标准】
完全正确得满分。
【备注】
可以参考教材输入输出这一章后面的实验内容。
package learn;
import java.io.*;
class Fenxi {
public String name;
public int shuxue;
public int wuli;
public int yingyu;
public double zongFen;
public Fenxi(String line){
String[] s=line.split(",");
this.name=s[0].split(":")[1];
this.shuxue=Integer.parseInt(s[1].split(" ")[1]);
this.wuli=Integer.parseInt(s[2].split(" ")[1]);
this.yingyu=Integer.parseInt(s[3].split(" ")[1]);
this.zongFen=this.shuxue+this.wuli+this.yingyu;
}
public String toString(){
return "name:"+name+",shuxue "+shuxue+",wuli "+wuli+",yingyu "+yingyu+" zongFen:"+zongFen;
}
}
public class AnalysisResult {
public static void main(String[] args) {
try{
BufferedWriter bw = new BufferedWriter(new FileWriter("scoreAnalysis.txt"));
BufferedReader br = new BufferedReader(new FileReader("score.txt"));
String line;
while ((line=br.readLine())!=null){
Fenxi fx=new Fenxi(line);
bw.write(fx.toString());
bw.newLine();
}
bw.close();
br.close();
}catch (IOException e){
e.printStackTrace();
}
}
}