讓使用者可以在程式裡 讀取並顯示報告檔案內容,這樣就不需要重新打開電腦的資料夾,就能直接在系統內查看報告使用FileReader與BufferedReader讀取檔案內容,將報告顯示在螢幕上
新增程式碼:
1.主選單中新增「5.查看報告檔案」
System.out.println("1. 輸入今日血壓");
System.out.println("2. 顯示所有紀錄");
System.out.println("3. 顯示平均值");
System.out.println("4. 輸出報告檔案");
System.out.println("5. 查看報告檔案");
System.out.println("6. 離開");
在switch裡加上
case 5:
tracker.viewReport("BloodPressureReport.txt");
break;
2.放進BloodPressureTracker類別
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public void viewReport(String fileName) {
System.out.println("\n=== 檢視報告檔案 ===");
try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
System.out.println("無法讀取報告檔案:" + e.getMessage());
}
}
FileReader:開啟文字檔
BufferedReader:「逐行讀取」功能
3.while迴圈逐行讀取
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
4.catch做錯誤處理
catch (IOException e) {
System.out.println("無法讀取報告檔案:" + e.getMessage());
}
執行結果:
中間日期省略
請選擇功能:
1. 輸入今日血壓
2. 顯示所有紀錄
3. 顯示平均值
4. 輸出報告檔案
5. 查看報告檔案
6. 離開
選擇:5
=== 檢視報告檔案 ===
=== 30天血壓紀錄報告 ===
第 1 天: 收縮壓=120, 舒張壓=80, 脈搏=70, 狀態=正常
第 2 天: 收縮壓=140, 舒張壓=90, 脈搏=75, 狀態=偏高
...
=== 平均值 ===
平均收縮壓: 130.0
平均舒張壓: 85.0
平均脈搏: 72.5