<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 `PrintStream`類 > 原文: [https://www.programiz.com/java-programming/printstream](https://www.programiz.com/java-programming/printstream) #### 在本教程中,我們將在示例的幫助下學習 Java `PrintStream`類及其`print()`和`printf()`方法。 `java.io`包的`PrintStream`類可用于以通常可讀的形式(文本)而不是字節寫入輸出數據。 它擴展了抽象類`OutputStream`。 ![The PrintStream class is a subclass of the Java OutputStream.](https://img.kancloud.cn/7e/76/7e7681a6119ab6aac683b5ea42d3b4dc_376x372.png "Java PrintStream Class") * * * ## `PrintStream`的工作原理 與其他輸出流不同,`PrintStream`將原始數據(整數,字符)轉換為文本格式而不是字節。 然后,它將格式化的數據寫入輸出流。 而且,`PrintStream`類不會引發任何輸入/輸出異常。 相反,我們需要使用`checkError()`方法來查找其中的任何錯誤。 **注意**:`PrintStream`類還具有自動刷新功能。 這意味著它將在以下情況之一下強制輸出流將所有數據寫入目標: * 如果在打印流中寫入了換行符`\n` * 如果調用`println()`方法 * 如果在打印流中寫入了字節數組 * * * ## 創建一個`PrintStream` 為了創建一個`PrintStream`,我們必須首先導入`java.io.PrintStream`包。 導入包后,便可以在此處創建打印流。 **1.使用其他輸出流** ```java // Creates a FileOutputStream FileOutputStream file = new FileOutputStream(String file); // Creates a PrintStream PrintStream output = new PrintStream(file, autoFlush); ``` 這里, * 我們創建了一個打印流,它將格式化的數據寫入由`FileOutputStream`表示的文件中 * `autoFlush`是一個可選的布爾參數,用于指定是否執行自動刷新 **2.使用文件名** ```java // Creates a PrintStream PrintStream output = new PrintStream(String file, boolean autoFlush); ``` Here, * 我們創建了一個打印流,它將格式化的數據寫入指定的文件 * `autoFlush`是一個可選的布爾參數,用于指定是否執行自動刷新 **注意**:在兩種情況下,`PrintStream`都使用某些默認字符編碼將數據寫入文件。 但是,我們也可以指定字符編碼( **UTF8** 或 **UTF16** )。 ```java // Creates a PrintStream using some character encoding PrintStream output = new PrintStream(String file, boolean autoFlush, Charset cs); ``` 在這里,我們使用`Charset`類指定字符編碼。 要了解更多信息,請訪問 [Java `Charset`(Java 官方文檔)](https://docs.oracle.com/javase/7/docs/api/java/nio/charset/Charset.html)。 * * * ## `PrintStream`的方法 `PrintStream`類提供了各種方法,使我們可以將數據打印到輸出。 ### `print()`方法 * `print()` - 將指定的數據打印到輸出流 * `println()` - 將數據以及末尾的換行符打印到輸出流 * * * ### 示例:帶有`System`類的`print()`方法 ```java class Main { public static void main(String[] args) { String data = "Hello World."; System.out.print(data); } } ``` **輸出** ```java Hello World. ``` 在上面的示例中,我們尚未創建打印流。 但是,我們可以使用`PrintStream`類的`print()`方法。 您可能想知道這怎么可能。 好吧,讓我解釋一下這里發生了什么。 注意這一行, ```java System.out.print(data); ``` Here, * `System`是負責執行標準輸入/輸出操作的最終類 * `out`是在`System`類中聲明的`PrintStream`類型的類變量 現在,由于`out`是`PrintStream`類型的,因此我們可以使用它來調用`PrintStream`類的所有方法。 ### 示例:帶有`PrintStream`類的`print()`方法 ```java import java.io.PrintStream; class Main { public static void main(String[] args) { String data = "This is a text inside the file."; try { PrintStream output = new PrintStream("output.txt"); output.print(data); output.close(); } catch(Exception e) { e.getStackTrace(); } } } ``` 在上面的示例中,我們創建了一個名為`output`的打印流。 打印流與`output.txt`文件鏈接。 ```java PrintStream output = new PrintStream("output.txt"); ``` 要將數據打印到文件,我們使用了`print()`方法。 在這里,當我們運行程序時,`output.txt`文件填充了以下內容。 ```java This is a text inside the file. ``` * * * ### `printf()`方法 `printf()`方法可用于打印格式化的字符串。 它包含 2 個參數:格式化的字符串和參數。 例如, ```java printf("I am %d years old", 25); ``` Here, * `"I am %d years old"`,是格式化字符串 * `%d`是格式化字符串中的整數占位符 * 25 是一個參數 格式化的字符串包括文本和數據。 并且,參數替換了格式化字符串中的數據。 因此,`%d`被 **25** 取代。 ### 示例:使用`PrintStream`的`printf()`方法 ```java import java.io.PrintStream; class Main { public static void main(String[] args) { try { PrintStream output = new PrintStream("output.txt"); int age = 25; output.printf("I am %d years old.", age); output.close(); } catch(Exception e) { e.getStackTrace(); } } } ``` 在上面的示例中,我們創建了一個名為`output`的打印流。 打印流與文件`output.txt`鏈接。 ```java PrintStream output = new PrintStream("output.txt"); ``` 要將格式化的文本打印到文件中,我們使用了`printf()`方法。 Here, when we run the program, the`output.txt`file is filled with the following content. ```java I am 25 years old. ``` * * * ## `PrintStream`的其他方法 | 方法 | 內容描述 | | --- | --- | | `close()` | 關閉打印流 | | `checkError()` | 檢查流中是否有錯誤,并返回布爾結果 | | `append()` | 將指定的數據附加到流 | 要了解更多信息,請訪問 [Java `PrintStream`(官方 Java 文檔)](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/PrintStream.html "Java PrintStream (official Java documentation)")。
                  <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>

                              哎呀哎呀视频在线观看