Java 从文件中读取成绩,按照要求处理后,并输出到指定文件中 您所在的位置:网站首页 java在文件尾部写入 Java 从文件中读取成绩,按照要求处理后,并输出到指定文件中

Java 从文件中读取成绩,按照要求处理后,并输出到指定文件中

2023-08-08 19:17| 来源: 网络整理| 查看: 265

题目:

【问题描述】 现有如下格式的成绩单(文本格式)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

代码: import java.io.*; import java.util.*; 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; } } public class AnalysisResult { public static void main(String[] args) { File fRead=new File("score.txt"); File fWrite=new File("scoreAnalysis.txt"); try { Writer out=new FileWriter(fWrite); 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+" zongFen:"+totalScore; System.out.println(str); bufferWrite.write(str); bufferWrite.newLine(); } bufferRead.close(); bufferWrite.close(); } catch(IOException e) { System.out.println(e.toString()); } } }


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有