java将程序中的成绩写入txt文件并与用户一一对应
时间: 2024-03-08 20:51:12 浏览: 58
好的,我可以为您解答。您可以使用Java中的File类和PrintWriter类来将程序中的成绩写入txt文件,并且可以使用Scanner类从用户输入中获取对应的信息。
以下是一个示例代码,演示如何将程序中的成绩写入txt文件,并与用户一一对应:
```java
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner;
public class ScoreWriter {
public static void main(String[] args) {
// 创建文件对象
File file = new File("score.txt");
PrintWriter writer = null;
Scanner scanner = new Scanner(System.in);
try {
// 创建PrintWriter对象,将成绩写入文件
writer = new PrintWriter(file);
// 获取用户输入的信息
System.out.println("请输入学生姓名和成绩,输入exit结束:");
String input = scanner.nextLine();
// 将用户输入的信息写入文件
while (!input.equals("exit")) {
String[] info = input.split(" ");
String name = info[0];
String score = info[1];
writer.println(name + " " + score);
input = scanner.nextLine();
}
// 关闭PrintWriter对象
writer.close();
// 从文件中读取成绩,并与用户一一对应
Scanner fileScanner = new Scanner(file);
System.out.println("请输入学生姓名,查询成绩,输入exit结束:");
input = scanner.nextLine();
while (!input.equals("exit")) {
while (fileScanner.hasNextLine()) {
String line = fileScanner.nextLine();
String[] info = line.split(" ");
String name = info[0];
String score = info[1];
if (name.equals(input)) {
System.out.println("学生姓名:" + name + ",成绩:" + score);
break;
}
}
fileScanner = new Scanner(file);
input = scanner.nextLine();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
```
以上代码中,首先创建了一个名为score.txt的文件,并创建了PrintWriter对象,将用户输入的学生姓名和成绩写入文件中。然后,再次使用Scanner类从文件中读取成绩,并与用户输入的学生姓名一一对应。
希望这个示例代码可以帮助您完成您的需求。
阅读全文