在 Java 中,可以使用 BufferedReader
和 BufferedWriter
类来读取和写入文本文件。
以下是一个示例程序,可以实现录入记录的事件,用数据文件的方式保存每天的事情安排,实现按天查询并显示记事列表的功能:
```java import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Scanner;
public class Notebook { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String fileName = "notebook.txt";
while (true) {
System.out.println("1. 录入记录");
System.out.println("2. 按天查询");
System.out.println("3. 退出");
System.out.print("请选择操作: ");
int choice = scanner.nextInt();
switch (choice) {
case 1:
addRecord(fileName);
break;
case 2:
queryRecords(fileName);
break;
case 3:
System.out.println("感谢使用记事本小程序!");
return;
default:
System.out.println("输入有误,请重新选择");
break;
}
}
}
private static void addRecord(String fileName) {
Scanner scanner = new Scanner(System.in);
String date;
String event;
System.out.print("请输入日期(格式为 yyyy-MM-dd): ");
date = scanner.nextLine();
System.out.print("请输入事件: ");
event = scanner.nextLine();
try (BufferedWriter bw = new BufferedWriter(new FileWriter(fileName, true))) {
bw.write(date + " " + event);
bw.newLine();
bw.flush();
System.out.println("记录添加成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
private static void queryRecords(String fileName) {
Scanner scanner = new Scanner(System.in);
String date;
System.out.print