ImageInputStream
ImageInputStream (이미지 입력 스트림 인터페이스)
ImageReader가 사용하는 위치 이동 가능한(seekable) 입력 스트림 인터페이스예요. InputStream, File 등 다양한 입력 소스와 앞으로 등장할 고속 I/O 소스들을 Image I/O API에서 사용할 수 있게 감싸(wrap) 주는 방식으로 동작해요.
본문
ImageInputStream은 바이트 순서(byte order)를 설정할 수 있고, 스트림 내 임의 위치로 이동하는 seek를 지원하며, 마크와 리셋을 통해 되돌아가기도 해요. 정수, 실수, 문자열, UTF 등 다양한 타입을 읽는 메서드를 제공해요.
int read() throws IOException
long readUnsignedInt() throws IOException
String readUTF() throws IOException
void seek(long pos) throws IOException
비트 단위 읽기를 위한 readBit(), readBits(int)도 제공하고, 캐시 여부를 확인하는 isCached(), isCachedMemory(), isCachedFile()도 있어요. 데이터를 앞부분만 읽고 폐기할 때는 flushBefore(long)로 그 이전 위치의 데이터를 해제할 수 있어요.