Java 分析成績單
阿新 • • 發佈:2019-01-09
package first; import java.io.*; import java.util.*; public class AnalysisResult { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub File fRead=new File("score.txt"); File fWrite=new File("scoreAnalysis.txt"); try{ Writer out=new FileWriter(fWrite,true); BufferedWriter bufferWrite=new BufferedWriter(out); Reader in=new FileReader(fRead); BufferedReader bufferRead=new BufferedReader(in); 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()); } } } import java.util.*; public class Fenxi { public static double getTotalScore(String s) { Scanner scanner=new Scanner(s); scanner.useDelimiter("[^0123456789.]+"); double totalScore=0; while(scanner.hasNext()){ try{ double score=scanner.nextDouble(); totalScore=totalScore+score; } catch(InputMismatchException exp){ String t=scanner.next(); } } return totalScore; } }
score.txt
姓名:張三,數學72分,物理67分,英語70分。
姓名:李四,數學92分,物理98分,英語88分。
姓名:週五,數學68分,物理80分,英語77分。