java中从键盘输人姓名、学号、成绩,并保存到文本文件中。重复进行,直到输人空 字符为止。
时间: 2025-01-01 14:36:24 浏览: 5
在Java中,你可以使用Scanner类获取用户输入, bufferedwriter用于将数据写入文本文件。以下是一个简单的示例,展示了如何实现这个功能:
```java
import java.io.*;
import java.util.Scanner;
public class InputToFile {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
BufferedWriter writer;
String name, studentId, score;
try {
File file = new File("students.txt");
FileWriter fw = new FileWriter(file, true); // 使用true表示追加模式
writer = new BufferedWriter(fw);
while (true) {
System.out.println("请输入姓名(输入空格退出):");
name = scanner.nextLine();
if (name.isEmpty()) break; // 如果输入为空,则跳出循环
System.out.println("请输入学号:");
studentId = scanner.nextLine();
System.out.println("请输入成绩:");
double numericScore = Double.parseDouble(scanner.nextLine()); // 确保分数为数字
score = String.valueOf(numericScore); // 转换回字符串格式
writer.write("姓名: " + name + "\n");
writer.write("学号: " + studentId + "\n");
writer.write("成绩: " + score + "\n\n"); // 每条记录间添加换行
}
writer.close(); // 关闭writer
System.out.println("数据已保存到students.txt文件中。");
} catch (IOException e) {
System.out.println("发生错误:" + e.getMessage());
} finally {
try {
if (scanner != null) scanner.close();
} catch (Exception ex) {
System.out.println("关闭扫描器时出现问题:" + ex.getMessage());
}
}
}
}
```
当运行程序时,它会持续提示用户输入姓名、学号和成绩,直到用户输入空格结束。所有输入都会被写入名为"students.txt"的文本文件中。
阅读全文