在Java 中寫入UTF-8 檔案
在Java 中,寫入文字檔案的預設輸出編碼可能不會總是UTF-8。這可能會導致讀取或處理文件時出現相容性問題。如果您明確需要建立UTF-8 文件,可以使用以下方法:
解決方案
不要使用FileWriter 類別進行寫入,而是使用FileOutputStream 以及與OutputStreamWriter 。這使您能夠在構造過程中指定所需的字元編碼。使用 try-with-resources 語句來確保正確的資源處理:
try (OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(PROPERTIES_FILE), StandardCharsets.UTF_8)) // do stuff }
說明
FileOutputStream 是處理實際檔案寫入的低階流。用 OutputStreamWriter 包裝它可以進行字元編碼轉換。透過將 StandardCharsets.UTF_8 傳遞給建構函數,您可以指定輸出應使用 UTF-8 進行編碼。
在 try-with-resources 語句中,您可以執行檔案寫入操作。 try 區塊保證資源(檔案流)在完成或發生異常時會自動關閉。
透過利用這種方法,您可以有效地強制建立 UTF-8 編碼的文件,無論系統預設設定。
以上是如何確保我的 Java 程式以 UTF-8 編碼寫入檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!