iT邦幫忙

2025 iThome 鐵人賽

0

目的

可將一大筆資料一次性載入資料庫 , 無需手動輸入。

1.主選單
新增功能10.加入CSV匯入功能
https://ithelp.ithome.com.tw/upload/images/20251020/201788455IgkTuIr1W.jpg


2.Main
String filePath : 宣告一個變數 , 用於儲存使用者輸入的CSV檔案名或路徑。

if : 如果使用者有輸入內容就跳出迴圈 。

int successCount/failCount/lineCount : 宣告並初始化行數計數器 /失敗會跳過的行數計數器/總共處理的資料行數記數器。

jaca.io.BufferReader br : 創建一個還衝讀取器 , 它提高readLine功能。

java.io.FileReader : 開啟或連線到filePath所指檔案的字符流。

nio.charest.StandardCharsets.UTF_8 :強制使用UTF_8編碼讀檔案 ,確保中文或特殊符號能被正確解讀。

lineCount++ : 累加已經處理的數據行數 。

line.startsWith("\uFEFF") : 檢查該行是否以UTF-8 BOM開頭

line.substring : 如果偵測到BOM,就將字串從第一個索引開始截 , 移除開頭的BOM字符。
line.split(",") : 使用逗號作為分隔符 , 將一行字串切分成字串陣列。

java.time.LocalDate.parse : 將日期字串轉換成LocalDate物件。

https://ithelp.ithome.com.tw/upload/images/20251020/20178845hKZeiqGtKT.jpg
https://ithelp.ithome.com.tw/upload/images/20251020/20178845GsNEulo8p2.jpg
https://ithelp.ithome.com.tw/upload/images/20251020/20178845kXj18QyFSu.jpg
https://ithelp.ithome.com.tw/upload/images/20251020/20178845bvGmPPT6ZX.jpg
https://ithelp.ithome.com.tw/upload/images/20251020/20178845MV50oL8fjB.jpg


結果
先在heath新增一個檔案叫做import_test.csv , 放入資料。
測試第4行格式錯誤 , 看能不能跳過這行 , 跳過就代表程式正確。
https://ithelp.ithome.com.tw/upload/images/20251020/20178845shJlvg6GwF.jpghttps://ithelp.ithome.com.tw/upload/images/20251020/20178845mfzRf7p0wl.jpghttps://ithelp.ithome.com.tw/upload/images/20251020/201788455RhVuLwA2H.jpg


上一篇
加入CSV匯出功能
下一篇
測試功能3
系列文
飲食營養追蹤 + 健康分析 Web 系統30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言