import java.io.*;
import java.util.*;
public class AnalysisResult {
public static void main(String[] args) {
// TODO Auto-generated method stub
File fRead=new File("D:\\t\\score.txt");
File fWrite=new File("scocreAnalysis.txt");
try{
Writer out=new FileWriter(fWrite); //以尾加的方式创建指向文件fWrite的out流
BufferedWriter bufferWrite=new BufferedWriter(out);//创建指向out的bufferReader流
Reader in=new FileReader(fRead);//创建指向文件fRead的in流
BufferedReader bufferRead=new BufferedReader(in);//创建指向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());
}
// TODO Auto-generated method stub
}
}
package test;
import java.util.*;
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;
}
}
创建一个新文件score.txt的代码:
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class WenJian {
public static void main(String[] args) {
// TODO Auto-generated method stub
File file=new File("D:\\t");
if(!file.exists()) {//如果文件不存在
file.mkdir();//创建文件夹
try {//如果t文件下没有score.txt就会创建该文件
BufferedWriter bw=new BufferedWriter(new FileWriter("D:\\t\\score.txt"));
bw.write("姓名:张三,抓举成绩106kg,挺举189kg。\n姓名:李四,抓举成绩108kg,挺举186kg。\n姓名:周五,抓举成绩112kg,挺举190kg。\n");//在创建好的文件中写入“姓名:张三,抓举成绩106kg,挺举189kg。\n姓名:李四,抓举成绩108kg,挺举186kg。\n姓名:周五,抓举成绩112kg,挺举190kg。\n”
bw.close();//关闭文件
}
catch(IOException e) {
e.printStackTrace();
}
}
}
}
运行结果: