자바 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",