ホームページ >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 オブジェクトからすべてのバイトを一度に読み取り、残りのすべてのバイトが読み取られてストリームの終わりが検出されるか、例外がスローされるまでブロックします。

>realAllBytes() このメソッドは、InputStream インスタンスを自動的に閉じることができません。ストリームの最後に到達すると、このメソッドをさらに呼び出すと、空のバイト配列が返される可能性があります。 このメソッドは、大量のデータを含む入力ストリームを読み取るのではなく、 すべてのバイトをバイト配列に読み取る方が便利な単純なユースケースで使用できます。

Syntax

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

以下の例では、単純なデータを含む「Technology.txt

」を「C:\Temp」フォルダーに作成しましたFile : { "JAVA", "PYTHON", "JAVASCRIPT", "SELENIUM", "SCALA"}.

Example

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。