<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Java `FileWriter`教程 原文:http://zetcode.com/java/filewriter/ Java `FileWriter`教程顯示了如何使用`FileWriter`類將文本寫入 Java 文件。 請注意,`FileWriter`有一個嚴重的限制:它使用默認編碼,并且不允許我們顯式指定編碼。 ## Java `FileWriter` `FileWriter`是 Java 便利類,用于將文本數據寫入文件。 `FileWriter`擴展了`OutputStreamWriter`并創建了`FileOutputStream`。 ## Java `FileWriter`構造器 這些是`FileWriter`構造器: * `FileWriter(File file)` — 將`FileWriter`構造為`File`對象。 * `FileWriter(File file, boolean append)` - 將`FileWriter`對象構造為`File`對象; 允許附加模式。 * `FileWriter(FileDescriptor fd)` - 將`FileWriter`構造為`FileDescriptor`。 * `FileWriter(String fileName)` - 將`FileWriter`構造為文件名。 * `FileWriter(String fileName, boolean append)` - 將`FileWriter`對象構造為文件名; 允許附加模式。 ## Java `FileWriter`寫入文件 使用`FileInputStream`和`FileOutputStream`,我們創建用于讀取和寫入`File`的流。 找不到文件時,將引發`FileNotFoundException`。 `File`是 Java 中文件或目錄的表示。 `JavaFileWriterEx.java` ```java package com.zetcode; import java.io.FileWriter; import java.io.IOException; public class JavaFileWriterEx { public static void main(String[] args) throws IOException { try (FileWriter writer = new FileWriter("src/resources/myfile.txt")) { writer.write("Today is a sunny day"); } } } ``` 該示例使用`FileWriter`將文本數據寫入文件。 ```java try (FileWriter writer = new FileWriter("src/resources/myfile.txt")) { ``` `FileWriter`構造器采用字符串作為參數; 它是我們寫入的文件名。 完成編寫后,我們使用`try-with-resources`構造來清理資源。 ```java writer.write("Today is a sunny day"); ``` `FileWriter`的`write()`方法將文本寫入文件。 ## Java `FileWriter`附加到文件 使用`FileWriter`可以將文本附加到文件中。 附加的典型用法是日志記錄。 `JavaFileWritterAppend.java` ```java package com.zetcode; import java.io.File; import java.io.FileWriter; import java.io.IOException; public class JavaFileWritterAppend { public static void main(String[] args) throws IOException { String fileName = "src/resources/myfile.txt"; File myfile = new File(fileName); try (FileWriter writer = new FileWriter(myfile, true)) { writer.write("Tomorrow will be cloudy."); } } } ``` 該代碼示例將文本附加到文件。 ```java try (FileWriter writer = new FileWriter(myfile, true)) { ``` `FileWriter`的第二個參數告訴我們將附加到文件中。 ## 使用`BufferedWriter`的`FileWriter` `BufferedWriter`可以提高`FileWriter's`性能。 `BufferedWriter`將文本寫入字符輸出流,緩沖字符以提高寫入單個字符,數組和字符串的性能。 可以指定緩沖區大小,也可以接受默認大小; 默認值對于大多數用途來說足夠大。 `JavaFileWriterBuffered.java` ```java package com.zetcode; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; public class JavaFileWriterBuffered { public static void main(String[] args) throws MalformedURLException, IOException { String text = readText(); String fileName = "src/resources/wikipedia_home_page.txt"; try (FileWriter writer = new FileWriter(fileName); BufferedWriter bufWriter = new BufferedWriter(writer)) { bufWriter.write(text); } } public static String readText() throws MalformedURLException, IOException { StringBuilder sb; URL url = new URL("https://www.wikipedia.org"); try (BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()))) { String line; sb = new StringBuilder(); while ((line = br.readLine()) != null) { sb.append(line); sb.append(System.lineSeparator()); } } return sb.toString(); } } ``` 在示例中,我們閱讀了維基百科的主頁(其 HTML 代碼)并將其寫入文件。 主頁足夠大以考慮緩沖。 ```java try (FileWriter writer = new FileWriter(fileName); BufferedWriter bufWriter = new BufferedWriter(writer)) { bufWriter.write(text); } ``` `FileWriter`作為參數傳遞給`BufferedWriter`。 然后,我們調用`BufferedWriter`的`write()`方法來編寫文本。 ```java try (BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()))) { ``` 讀取操作也通過`BufferedReader`類進行緩沖。 ## 指定編碼 `FileWriter`使用默認編碼,并且不允許我們顯式指定編碼。 如果必須設置編碼,則可以使用`OutputStreamWriter`和`FileOutputStream`。 `JavaFileOutputStreamEx.java` ```java package com.zetcode; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.nio.charset.StandardCharsets; public class JavaFileOutputStreamEx { public static void main(String[] args) throws FileNotFoundException, IOException { String fileName = "src/resources/myfile.txt"; try (OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(fileName), StandardCharsets.UTF_8)) { osw.write("Сегодня был прекрасный день."); } } } ``` 該示例使用`OutputStreamWriter`將文本寫入文件。 第二個參數是要使用的字符集。 在本教程中,我們介紹了 Java `FileWriter`類。 您可能也對相關教程感興趣: [Java `FileOutputStream`教程](/java/fileoutputstream/), [Java 文件時間](/articles/javafiletime/), [Java 附加到文件](/articles/javaappendtofile/),[用 Java 讀取文本文件](/articles/javareadtext/),[用 Java 讀寫 ICO 圖像](/articles/javaico/), [Java Swing 教程](/tutorials/javaswingtutorial/),[Java 教程](/lang/java/),[用 Java 顯示圖像](/java/displayimage/)。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看