Java 现在有如下格式的成绩单(文本格式)score.txt,内容如下∶ 姓名,数学,物理,英语 张三,72,67,70 李四,92,98,88 王五,68,80,77 要求按行读入取成绩单,并在该行的后面尾加上该同学的总成绩,然后再将该行写入到一个名字为 socreAnalysis.txt中,写入后内容如下: 姓名,数学,物理,英语 张三,72,67,70,209 李四,92,98,88,278 王五,68,80,77,22
时间: 2023-09-27 21:05:33 浏览: 158
可以使用 Java 的 IO 流来实现读取和写入操作,具体代码如下:
```java
import java.io.*;
public class ScoreAnalysis {
public static void main(String[] args) {
try {
// 读取 score.txt 文件
BufferedReader br = new BufferedReader(new FileReader("score.txt"));
// 新建 scoreAnalysis.txt 文件
BufferedWriter bw = new BufferedWriter(new FileWriter("scoreAnalysis.txt"));
// 处理每一行数据
String line;
while ((line = br.readLine()) != null) {
String[] fields = line.split(",");
int sum = 0;
for (int i = 1; i < fields.length; i++) {
sum += Integer.parseInt(fields[i]);
}
line = line + "," + sum;
bw.write(line);
bw.newLine();
}
// 关闭文件流
br.close();
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
上述代码中,我们使用了 BufferedReader 和 BufferedWriter 分别读取 score.txt 文件和写入 scoreAnalysis.txt 文件。在读取每一行数据后,我们通过 String 类的 split 方法将其拆分为字符串数组,然后计算该同学的总成绩,并将其添加到该行数据的末尾。最后将处理后的数据写入到 scoreAnalysis.txt 文件中,并加上换行符。
阅读全文