java代码使用IO流实现:1:查看所有学生信息 2:根据学号查看学生信息 3:添加学生信息
时间: 2024-05-06 15:21:01 浏览: 78
好的,这是一道关于 Java IO 流的问题。对于这题,我们可以使用 BufferedReader 和 BufferedWriter 这两个类来读写文件。您可以参考以下的代码:
1. 查看所有学生信息:
```java
public void readAllStudents() {
try {
// 打开文件
BufferedReader in = new BufferedReader(new FileReader("students.txt"));
// 读取全部学生信息
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
// 关闭文件
in.close();
} catch (IOException e) {
System.out.println("读取文件出错:" + e.getMessage());
}
}
```
2. 根据学号查看学生信息:
```java
public void readStudentById(String id) {
try {
// 打开文件
BufferedReader in = new BufferedReader(new FileReader("students.txt"));
// 查找并输出指定学号的学生信息
String line;
boolean found = false;
while ((line = in.readLine()) != null) {
String[] fields = line.split(",");
if (fields[0].equals(id)) {
System.out.println(line);
found = true;
break;
}
}
// 如果没找到学生信息,则输出提示信息
if (!found) {
System.out.println("没有找到学号为 " + id + " 的学生信息。");
}
// 关闭文件
in.close();
} catch (IOException e) {
System.out.println("读取文件出错:" + e.getMessage());
}
}
```
3. 添加学生信息:
```java
public void addStudent(String id, String name, String gender, int age) {
try {
// 打开文件
BufferedWriter out = new BufferedWriter(new FileWriter("students.txt", true));
// 写入新学生信息
out.write(id + "," + name + "," + gender + "," + age);
out.newLine();
// 关闭文件
out.close();
System.out.println("已成功添加学生信息:" + id + ", " + name + ", " + gender + ", " + age);
} catch (IOException e) {
System.out.println("写入文件出错:" + e.getMessage());
}
}
```
希望这些代码能够对您有所帮助。
阅读全文