首頁 >Java >java教程 >在Java 9中何時使用InputStream的readAllBytes()方法?

在Java 9中何時使用InputStream的readAllBytes()方法?

WBOY
WBOY轉載
2023-08-31 17:01:05570瀏覽

在Java 9中何时使用InputStream的readAllBytes()方法?

從Java 9 開始,我們可以使用InputStream 類別中的readAllBytes() 方法將所有位元組讀取到位元組數組中。此方法一次從 InputStream 物件讀取所有位元組,並阻塞,直到讀取完所有剩餘位元組並偵測到流結束,或引發異常。

>reallAllBytes() 方法無法自動關閉 InputStream 實例。當它到達流的末尾時,此方法的進一步呼叫可以傳回一個空字節數組。 我們可以在簡單的用例中使用此方法,在這些用例中,可以方便地將所有位元組讀入位元組數組,而不是用於讀取具有大量資料的輸入流。

語法

<strong>public byte[] readAllBytes() throws IOException</strong>

在下面的範例中,我們在「C:\Temp」資料夾中建立了一個包含簡單資料的「Technology.txt檔案:{ "JAVA", "PYTHON", "JAVASCRIPT", "SELENIUM", "SCALA"}.

範例

import java.nio.*;
import java.nio.file.*;
import java.io.*;
import java.util.stream.*;
import java.nio.charset.StandardCharsets;

public class ReadAllBytesMethodTest {
   public static void main(String args[]) {
      try(<strong>InputStream </strong>stream = <strong>Files</strong>.newInputStream(<strong>Paths.get</strong>("C://Temp//Technology.txt"))) {
         <strong>// Convert stream to string</strong>
         String contents = new String(stream.<strong>readAllBytes()</strong>, <strong>StandardCharsets.UTF_8</strong>);

         <strong>// To print the string content</strong>
         System.out.println(contents);
      } catch(IOException ioe) {
         ioe.printStackTrace();
      }
   }
}

輸出

<strong>"JAVA", "PYTHON", "JAVASCRIPT", "SELENIUM", "SCALA"</strong>

以上是在Java 9中何時使用InputStream的readAllBytes()方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除