InputStream.ReadNBytes 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
ReadNBytes(Int32) |
입력 스트림에서 지정된 바이트 수까지 읽습니다. |
ReadNBytes(Byte[], Int32, Int32) |
입력 스트림에서 지정된 바이트 배열로 요청된 바이트 수를 읽습니다. |
ReadNBytes(Int32)
입력 스트림에서 지정된 바이트 수까지 읽습니다.
[Android.Runtime.Register("readNBytes", "(I)[B", "GetReadNBytes_IHandler", ApiSince=33)]
public virtual byte[]? ReadNBytes (int len);
[<Android.Runtime.Register("readNBytes", "(I)[B", "GetReadNBytes_IHandler", ApiSince=33)>]
abstract member ReadNBytes : int -> byte[]
override this.ReadNBytes : int -> byte[]
매개 변수
- len
- Int32
읽을 최대 바이트 수
반환
이 입력 스트림에서 읽은 바이트를 포함하는 바이트 배열
- 특성
설명
입력 스트림에서 지정된 바이트 수까지 읽습니다. 이 메서드는 요청된 바이트 수를 읽거나, 스트림의 끝을 검색하거나, 예외가 throw될 때까지 차단합니다. 이 메서드는 입력 스트림을 닫지 않습니다.
반환된 배열의 길이는 스트림에서 읽은 바이트 수와 같습니다. 0이면 len
바이트를 읽지 않고 빈 바이트 배열이 반환됩니다. 그렇지 않으면 스트림에서 최대 len
바이트를 읽습니다. 스트림의 끝이 발견되면 읽는 바이트보다 len
작을 수 있습니다.
이 스트림이 스트림의 끝에 도달하면 이 메서드를 추가로 호출하면 빈 바이트 배열이 반환됩니다.
이 메서드는 지정된 바이트 수를 바이트 배열로 읽는 것이 편리한 간단한 경우를 위한 것입니다. 이 메서드에 의해 할당된 총 메모리 양은 바인딩된 스트림에서 읽은 바이트 수에 len
비례합니다. 따라서 충분한 메모리가 제공된 매우 큰 값 len
으로 메서드를 안전하게 호출할 수 있습니다.
입력 스트림이 비동기적으로 닫히거나 읽기 중에 스레드가 중단되는 경우 동작은 고도로 입력 스트림에 따라 지정되지 않습니다.
I/O 오류가 입력 스트림에서 읽는 경우 바이트를 읽은 후 일부(전부는 아님)가 발생할 수 있습니다. 따라서 입력 스트림이 스트림의 끝에 있지 않을 수 있으며 일관성이 없는 상태일 수 있습니다. I/O 오류가 발생할 경우 스트림을 즉시 닫는 것이 좋습니다.
11에 추가되었습니다.
에 대한 java.io.InputStream.readNBytes(int)
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.
적용 대상
ReadNBytes(Byte[], Int32, Int32)
입력 스트림에서 지정된 바이트 배열로 요청된 바이트 수를 읽습니다.
[Android.Runtime.Register("readNBytes", "([BII)I", "GetReadNBytes_arrayBIIHandler", ApiSince=33)]
public virtual int ReadNBytes (byte[]? b, int off, int len);
[<Android.Runtime.Register("readNBytes", "([BII)I", "GetReadNBytes_arrayBIIHandler", ApiSince=33)>]
abstract member ReadNBytes : byte[] * int * int -> int
override this.ReadNBytes : byte[] * int * int -> int
매개 변수
- b
- Byte[]
데이터를 읽는 바이트 배열
- off
- Int32
데이터가 기록되는 시작 오프셋 b
- len
- Int32
읽을 최대 바이트 수
반환
버퍼로 읽은 실제 바이트 수
- 특성
설명
입력 스트림에서 지정된 바이트 배열로 요청된 바이트 수를 읽습니다. 이 메서드는 입력 데이터의 바이트를 읽거나, 스트림의 끝을 검색하거나, 예외가 throw될 때까지 len
차단합니다. 실제로 읽은 바이트 수(0)가 반환됩니다. 이 메서드는 입력 스트림을 닫지 않습니다.
바이트를 읽기 전에 len
스트림의 끝에 도달하는 경우 읽은 실제 바이트 수가 반환됩니다. 이 스트림이 스트림의 끝에 도달하면 이 메서드의 추가 호출은 0을 반환합니다.
0이면 len
바이트를 읽 0
지 않고 반환됩니다. 그렇지 않으면 바이트까지 len
읽으려고 시도합니다.
첫 번째 바이트 읽기는 요소 b[off]
, 다음 b[off+1]
바이트 등에 저장됩니다. 읽은 바이트 수는 최대 len
. 실제로 읽은 바이트 수를 k로 둡니다. 이러한 바이트는 k-1]
를 통해 b[off+
요소 b[off]
에 저장되고 요소 b[off+
k]
b[off+len-1]
는 영향을 받지 않습니다.
입력 스트림이 비동기적으로 닫히거나 읽기 중에 스레드가 중단되는 경우 동작은 고도로 입력 스트림에 따라 지정되지 않습니다.
입력 스트림에서 읽는 동안 I/O 오류가 발생하면 일부 바이트가 입력 스트림의 b
데이터로 업데이트된 후에 발생할 수 있습니다. 따라서 입력 스트림이 b
일관되지 않은 상태일 수 있습니다. I/O 오류가 발생할 경우 스트림을 즉시 닫는 것이 좋습니다.
9에 추가되었습니다.
에 대한 java.io.InputStream.readNBytes(byte[], int, int)
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.