CodeGym
促銷
學習
課程
任務
問卷 & 測驗
遊戲
說明
行程
社群
用戶
論壇
聊天
文章
成功故事
動態
評價
訂閱
淺色主題

課程

  • 評論
  • 關於我們
開始
開始學習
立即開始學習
  • My Progress
  • Courses
  • 任務地圖
  • 課程
  • 讀取文字檔:逐行與整檔

    JAVA 25 SELF
    等級 36,課程 1
    本講解將介紹以 BufferedReader 逐行讀取,以及透過 Files.readAllLines/ Files.readString 讀取整個檔案、如何選擇緩衝區(例如 8192 位元組)、使用 try-with-resources 安全關閉資源,以及編碼處理( StandardCharsets.UTF_8)。同時展示實作範例(統計行數、日誌搜尋、設定檔解析)與常見錯誤(例如整檔載入大檔時發生 OutOfMemoryError)。
    可用
  • 二進位檔案的讀取與寫入:InputStream、OutputStream

    JAVA 25 SELF
    等級 36,課程 2
    我們將解析文字檔與二進位檔的差異、基本的位元組串流 InputStream/ OutputStream 以及它們的檔案實作( FileInputStream、 FileOutputStream)。撰寫具緩衝區的複製,討論逐一位元組與區塊讀取的速度差異,如何透過 write() 寫入位元組陣列、 try-with-resources 的細節、如何選擇緩衝區大小 4– 16 KB、安全使用 readAllBytes(),以及常見錯誤(例如把 FileReader/ FileWriter 用在二進位資料)。
    可用
  • DataInputStream、DataOutputStream:處理基本型別

    JAVA 25 SELF
    等級 36,課程 3
    本講次講解如何在 Java 中使用 DataInputStream 與 DataOutputStream 進行二進位輸入/輸出:如何用 writeXXX/ readXXX 方法寫入與讀取基本型別( int、 double、 boolean)與字串( String),為何讀寫順序很重要、如何儲存陣列、什麼時候值得再加上 BufferedInputStream/ BufferedOutputStream,以及哪些常見錯誤會導致 IOException 或 EOFException。
    可用
  • 使用 try-with-resources:自動關閉資源

    JAVA 25 SELF
    等級 36,課程 4
    解析在 Java 中安全使用資源的現代做法 — try-with-resources:與舊有模式 try/ catch/ finally + close() 的比較、對型別的要求(實作 AutoCloseable 或 Closeable)、 try(...){...} 的語法、關閉順序、透過 getSuppressed() 檢視「被抑制」的例外、搭配輸入/輸出串流與自訂資源的範例,以及建議與常見錯誤。
    可用
  • 什麼是編碼,為什麼需要它

    JAVA 25 SELF
    等級 37,課程 0
    解析什麼是編碼,以及為何沒有編碼電腦文字會變成「亂碼」。比較常見的集合: UTF-8、 Windows-1251、 ASCII、 Unicode/ UTF-16。討論 JVM 中字串的內部表示( String 在 Unicode 中)與正確的輸入/輸出:透過 InputStreamReader/ OutputStreamWriter 與 StandardCharsets.UTF_8 明確指定編碼。最後——實作範例與常見錯誤。
    可用
  • 主要編碼:UTF-8、UTF-16、ISO-8859-1

    JAVA 25 SELF
    等級 37,課程 1
    我們來剖析 Java 開發者最常遇到的三種基礎編碼:什麼是 UTF-8(web 與多數格式的標準)、JVM 的內部字串格式—— UTF-16(含代理對與 BOM)如何運作,以及為何至今仍會遇到 ISO-8859-1。說明與 ASCII 的相容性、每個字元所需的位元組數,並示範如何在 Java 中透過 StandardCharsets、 Files.write、 Files.readString、 Paths.get 正確處理編碼。最後——常見錯誤:讀寫方式不正確、系統「預設」編碼、把 UTF-16/ UTF-8 搞混。
    可用
  • 讀寫檔案時的編碼設定

    JAVA 25 SELF
    等級 37,課程 2
    如何避免「亂碼」並讓文字在所有機器上看起來一致:解析系統編碼( "file.encoding")、如何使用 Charset 與 StandardCharsets 常數,透過 Files . newBufferedReader 與 Files . newBufferedWriter 進行讀寫、使用 try-with-resources、查看可用的編碼並遵循最佳實務(預設為 "UTF-8")。最後——常見錯誤與如何避免。
    可用
  • 編碼不一致的問題與常見錯誤

    JAVA 25 SELF
    等級 37,課程 3
    在本講座中,我們解析「亂碼」、字元遺失( ?)、像 MalformedInputException 這樣的例外、成因( Windows-1251/ UTF-8 不匹配、系統的「預設」編碼、 BOM)、診斷方式( file.encoding),以及最佳實務:明確指定 Charset,搭配 Files/ BufferedReader 使用 StandardCharsets,避免使用 FileReader/ FileWriter,以及針對 XML/ JSON 與 BOM 的細節。
    可用
  • 檔案重新編碼:以一種編碼讀取、以另一種編碼寫入

    JAVA 25 SELF
    等級 37,課程 4
    如何使用 java.nio.file 與 java.io 的類別,正確地以一種編碼從檔案讀取文字,再以另一種編碼寫入:使用 Files.newBufferedReader/ Files.newBufferedWriter 或 InputStreamReader/ OutputStreamWriter,指定所需的 Charset,採用 try-with-resources,並避免系統預設編碼的陷阱。提供逐步流程、Windows-1251 → UTF-8 範例、細節(BOM、大型檔案、例外)以及常見錯誤。
    可用
  • IOException 與 FileNotFoundException:錯誤處理

    JAVA 25 SELF
    等級 38,課程 0
    瞭解 Java 中 I/O 例外的階層結構、 IOException 與其子類 FileNotFoundException 的差異、它們何時發生以及如何正確處理。說明 catch 區塊的順序、檔案讀寫實作、記錄(logging)建議,並附上最常見錯誤的簡表。也會談到受檢例外、關鍵字 try、 catch、 finally、 throws,以及 try-with-resources 的用法。
    可用
  • 檢查檔案與目錄是否存在

    JAVA 25 SELF
    等級 38,課程 1
    如何在 Java 檢查檔案或資料夾是否存在:使用類別 File 及其方法 exists()、 isFile()、 isDirectory(),以及較新的 NIO 作法,透過 Path 與 Files — Files.exists()、 Files.isRegularFile()、 Files.isDirectory()。我們將討論 TOCTOU 問題,以及為什麼檢查不等於錯誤處理:即便在 exists() 之後,你仍可能遇到 FileNotFoundException 或 AccessDeniedException;因此務必使用 try 區塊,並在可能時採用 try-with-resources。另外還有實作:在檔案存在時讀取、透過 Files.createDirectory() 與 Files.createDirectories() 建立目錄,處理相對與絕對路徑。
    可用
  • 處理損壞的檔案,資料復原

    JAVA 25 SELF
    等級 38,課程 2
    如何根據例外辨識「壞掉」的檔案( EOFException、 MalformedInputException、 ZipException、 StreamCorruptedException),在格式不相符時該怎麼做,以及應該採用哪些復原策略:記錄日誌並通知使用者、讀到出錯為止的部分讀取、備份、校驗和( SHA-256)。實作練習包含讀到 EOF、正確處理編碼,以及解析常見錯誤(驗證、 try-with-resources、謹慎覆寫)。
    可用
  • 1
  • ...
  • 16
  • 17
  • 18
  • 19
  • 20
  • ...
  • 30
學習
  • 註冊
  • Java 課程
  • 題目協助
  • 價格
  • Java 語法
社群
  • 用戶
  • 文章
  • 論壇
  • 聊天
  • 成功故事
  • 動態
  • 聯盟計畫
公司
  • 關於我們
  • 聯絡方式
  • 評價
  • 新聞中心
  • CodeGym for EDU
  • 常見問題
  • 支援
CodeGymCodeGym 是一門從零開始學習 Java 程式設計的線上課程。這門課程是初學者精通 Java 的完美方式。它包含超過 1200 題、具即時檢驗功能,以及涵蓋 Java 基礎理論的必要範圍。為了幫助你在學習上成功,我們實作了一系列激勵功能:測驗、程式專案、關於有效學習的內容,以及 Java 開發者職涯相關內容。
追蹤我們
介面語言
English Deutsch Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia
繁體中文
Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"程式設計師是培養出來的,不是天生的" © 2026 CodeGym
MastercardVisa
"程式設計師是培養出來的,不是天生的" © 2026 CodeGym