什么时候在Java 9中使用InputStream的readNBytes()方法?

从Java 9开始,可以将readNBytes()方法添加到InputStream类。此方法从输入流中将请求的字节数读取到给定的字节数组中。此方法将阻塞直到读取了len个输入数据字节,检测到流的末尾或引发异常为止。 readNBytes()方法不会关闭的输入流。此方法对于避免大文件的内存问题很有用。

语法

public int readNBytes(byte[] b, int off, int len) throws IOException


在下面的示例中,我们在源文件夹中创建了一个具有简单数据的“ Technology.txt ”文件:{“ JAVA”,“ PYTHON”,“ JAVASCRIPT”,“ SELENIUM”,“ SCALA”}。

示例

import java.io.*;

import java.util.stream.*;

import java.nio.*;

import java.nio.file.*;

public class InputStreamReadNByteMethodTest {

   InputStream inputStream = nputStreamReadNByteMethodTest.class.getResourceAsStream("Technology.txt");

   public void testReadNBytes() throws Exception {

      final byte[] data = new byte[10];

      inputStream.readNBytes(data, 0, 7);

      System.out.println(new String(data));

   }

   public static void main(String args[]) throws Exception {

      InputStreamReadNByteMethodTest t = new InputStreamReadNByteMethodTest();

      t.testReadNBytes();  

   }

}

输出结果

"JAVA",

以上是 什么时候在Java 9中使用InputStream的readNBytes()方法? 的全部内容, 来源链接: utcz.com/z/338235.html

回到顶部