|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.imageio.stream.ImageInputStreamImpl
public abstract class ImageInputStreamImpl
ImageInputStream
인터페이스를 구현하는 abstract 클래스입니다. 이 클래스의 목적은, 서브 클래스에서 구현할 필요가 있는 메소드의 수를 줄이는 것입니다.
특히, 이 클래스는 바이트순서의 해석, 버퍼링, 마크부와 리셋, 파기, 클로즈, 및 폐기의 대부분 또는 모든 것을 처리합니다.
필드의 개요 | |
---|---|
protected int |
bitOffset
스트림내의 현재의 비트 오프셋(offset)입니다. |
protected ByteOrder |
byteOrder
열거 클래스 java.nio.ByteOrder 의 인스턴스로 나타내지는 스트림의 바이트순서로,ByteOrder.BIG_ENDIAN 는 네트워크 바이트순서,ByteOrder.LITTLE_ENDIAN 는 역순서를 나타냅니다. |
protected long |
flushedPos
그것보다 전의 데이터가 파기되는 위치입니다. |
protected long |
streamPos
스트림내의 현재의 read 위치입니다. |
생성자 의 개요 | |
---|---|
ImageInputStreamImpl ()
ImageInputStreamImpl 를 구축합니다. |
메소드의 개요 | |
---|---|
protected void |
checkClosed ()
스트림이 닫혀지고 있었을 경우는 IOException 를 throw 합니다. |
void |
close ()
스트림을 닫습니다. |
protected void |
finalize ()
가베지 컬렉션의 전에 이 객체를 finalize 합니다. |
void |
flush ()
현재의 스트림 위치보다 전의 초기의 스트림 위치를 파기합니다. |
void |
flushBefore (long pos)
지시받은 위치보다 전의 초기의 스트림 부분을 파기합니다. |
int |
getBitOffset ()
현재의 비트 오프셋(offset)를 0 에서 7 까지의 정수로서 돌려줍니다. |
ByteOrder |
getByteOrder ()
이 스트림로부터 읽히는 데이터의 바이트순서를, java.nio.ByteOrder 열거의 인스턴스로서 돌려줍니다. |
long |
getFlushedPosition ()
시크가 실행되는 스트림내의 제일 초기의 위치를 돌려줍니다. |
long |
getStreamPosition ()
스트림의 현재의 바이트 위치를 돌려줍니다. |
boolean |
isCached ()
디폴트의 구현에서는 false 를 돌려줍니다. |
boolean |
isCachedFile ()
디폴트의 구현에서는 false 를 돌려줍니다. |
boolean |
isCachedMemory ()
디폴트의 구현에서는 false 를 돌려줍니다. |
long |
length ()
스트림이 미지의 길이인 것을 나타낸다 -1L 를 돌려줍니다. |
void |
mark ()
마크 붙이고 된 위치의 스택상에 현재의 스트림 위치를 푸쉬 합니다. |
abstract int |
read ()
스트림로부터 1 바이트를 읽어들여, 그것을 0 에서 255 까지의 int 로서 돌려줍니다. |
int |
read (byte[] b)
read(b, 0, b.length) 를 호출하는 편리한 메소드입니다. |
abstract int |
read (byte[] b,
int off,
int len)
스트림로부터 len 바이트까지 읽어들여,b 에 인덱스 off 로부터 포함합니다. |
int |
readBit ()
스트림로부터 1 비트를 읽어들여, 그것을 값 0 또는 1 의 int 로서 돌려줍니다. |
long |
readBits (int numBits)
스트림로부터 비트열을 읽어들여, long 로서 돌려줍니다. |
boolean |
readBoolean ()
스트림로부터 1 바이트를 읽어들여, 0 이 아닌 경우는 true 의 boolean 치를 돌려주어, 0 의 경우는 false 를 돌려줍니다. |
byte |
readByte ()
스트림로부터 1 바이트를 읽어들여, 그것을 byte 치로서 돌려줍니다. |
void |
readBytes (IIOByteBuffer buf,
int len)
스트림로부터 len 바이트까지를 읽어들여, 지정된 IIOByteBuffer 를 변경해 데이터를 검출 가능한 바이트 배열, 오프셋(offset), 및 길이를 나타냅니다. |
char |
readChar ()
readUnsignedShort 와 동등, 다만 결과는 char 데이터형을 사용해 돌려주어집니다. |
double |
readDouble ()
스트림로부터 8 바이트를 읽어들여, 현재의 바이트순서에 따라 개념상 그것들을 연결해, 결과를 double 치로서 돌려줍니다. |
float |
readFloat ()
스트림로부터 4 바이트를 읽어들여, 현재의 바이트순서에 따라 개념상 그것들을 연결해, 결과를 float 치로서 돌려줍니다. |
void |
readFully (byte[] b)
스트림로부터 b.length 바이트를 읽어들여, 그것들을 b 에 인덱스 0 으로부터 포함합니다. |
void |
readFully (byte[] b,
int off,
int len)
스트림로부터 len 바이트를 읽어들여, 그것들을 b 에 인덱스 off 로부터 포함합니다. |
void |
readFully (char[] c,
int off,
int len)
스트림로부터 현재의 바이트순서에 따라 len 바이트의 char (부호 없음 16 비트 정수) 치를 읽어들여, 그것들을 c 에 인덱스 off 로부터 포함합니다. |
void |
readFully (double[] d,
int off,
int len)
스트림로부터 현재의 바이트순서에 따라 len 바이트의 double (64 비트 IEEE 배정밀도 부동 소수점수(실수)) 치를 읽어들여, 그것들을 d 에 인덱스 off 로부터 포함합니다. |
void |
readFully (float[] f,
int off,
int len)
스트림로부터 현재의 바이트순서에 따라 len 바이트의 float (32 비트 IEEE 단정밀도 부동 소수점수(실수)) 치를 읽어들여, 그것들을 f 에 인덱스 off 로부터 포함합니다. |
void |
readFully (int[] i,
int off,
int len)
스트림로부터 현재의 바이트순서에 따라 len 바이트의 int (부호 첨부 32 비트 정수) 치를 읽어들여, 그것들을 i 에 인덱스 off 로부터 포함합니다. |
void |
readFully (long[] l,
int off,
int len)
스트림로부터 현재의 바이트순서에 따라 len 바이트의 long (부호 첨부 64 비트 정수) 치를 읽어들여, 그것들을 l 에 인덱스 off 로부터 포함합니다. |
void |
readFully (short[] s,
int off,
int len)
스트림로부터 현재의 바이트순서에 따라 len 바이트의 short (부호 첨부 16 비트 정수) 치를 읽어들여, 그것들을 s 에 인덱스 off 로부터 포함합니다. |
int |
readInt ()
스트림로부터 4 바이트를 읽어들여, 현재의 바이트순서에 따라 개념상 그것들을 연결해, 결과를 int 치로서 돌려줍니다. |
String |
readLine ()
입력 스트림로부터, 다음의 행의 텍스트를 읽어들입니다. |
long |
readLong ()
스트림로부터 8 바이트를 읽어들여, 현재의 바이트순서에 따라 개념상 그것들을 연결해, 결과를 long 치로서 돌려줍니다. |
short |
readShort ()
스트림로부터 2 바이트를 읽어들여, 현재의 바이트순서에 따라 개념상 그것들을 연결해, 결과를 short 치로서 돌려줍니다. |
int |
readUnsignedByte ()
스트림로부터 바이트를 읽어들여, 개념상, 정수로 변환해, 부호 확장 비트를 없애기 위해서(때문에) 그것을 0xff 로 마스크 해,byte 치로서 돌려줍니다. |
long |
readUnsignedInt ()
스트림로부터 4 바이트를 읽어들여 현재의 바이트순서에 따라 개념상 그것들을 연결해, 결과의 값을 long 로 변환해, 부호 확장 비트를 없애기 위해서(때문에) 0xffffffffL 로 마스크 합니다. |
int |
readUnsignedShort ()
스트림로부터 2 바이트를 읽어들여, 현재의 바이트순서에 따라 개념상 그것들을 연결해, 결과의 값을 int 로 변환해, 부호 확장 비트를 없애기 위해서(때문에) 0xffff 로 마스크 합니다. |
String |
readUTF ()
수정 UTF-8 형식에서 encode 된 캐릭터 라인을 읽어들입니다. |
void |
reset ()
마크 붙이고 된 위치의 스택으로부터 현재의 스트림 바이트 및 비트 위치를 리셋 합니다. |
void |
seek (long pos)
현재의 스트림 위치를 목적의 위치로 설정합니다. |
void |
setBitOffset (int bitOffset)
비트 오프셋(offset)에 0 에서 7 까지의 정수를 설정합니다. |
void |
setByteOrder (ByteOrder byteOrder)
이 스트림로부터의 향후의 데이터값의 읽을 위해(때문에), 바이트순서를 설정합니다. |
int |
skipBytes (int n)
seek(getStreamPosition() + n) 를 호출해, 현재의 스트림 위치를 전진시킵니다. |
long |
skipBytes (long n)
seek(getStreamPosition() + n) 를 호출해, 현재의 스트림 위치를 전진시킵니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
필드의 상세 |
---|
protected ByteOrder byteOrder
java.nio.ByteOrder
의 인스턴스로 나타내지는 스트림의 바이트순서로,ByteOrder.BIG_ENDIAN
는 네트워크 바이트순서,ByteOrder.LITTLE_ENDIAN
는 역순서를 나타냅니다. 디폴트에서는, 값은 ByteOrder.BIG_ENDIAN
입니다.
protected long streamPos
protected int bitOffset
protected long flushedPos
flushedPos
는 항상 0 이상이 됩니다.
생성자 의 상세 |
---|
public ImageInputStreamImpl()
ImageInputStreamImpl
를 구축합니다.
메소드의 상세 |
---|
protected final void checkClosed() throws IOException
IOException
를 throw 합니다. 서브 클래스는, 스트림이 열려 있는 것이 필요등의 메소드로부터도, 이 메소드를 호출할 수가 있습니다.
IOException
- 스트림이 닫혀지고 있는 경우public void setByteOrder(ByteOrder byteOrder)
ImageInputStream
의 기술: 열거 클래스 java.nio.ByteOrder
를 사용해 바이트순서를 지정합니다. 값 ByteOrder.BIG_ENDIAN
에서는, 고위의 바이트가 선두가 되는, 이른바 빅 endian (네트워크 바이트순서)가 지정됩니다. Motorola 와 Sparc 프로세서는 데이터를 이 형식에서 포함합니다. 한편 Intel 프로세서는, 데이터를 역순서의 ByteOrder.LITTLE_ENDIAN
로 포함합니다.
바이트순서는,readBits
메소드로부터 반환되는 결과 (ImageOutputStream.writeBits
에 의해 기입해지는 값)에는 영향을 주지 않습니다.
ImageInputStream
내의 setByteOrder
byteOrder
- ByteOrder.BIG_ENDIAN
또는 java.nio.ByteOrder.LITTLE_ENDIAN
의 언젠가
(향후의 read로 네트워크 바이트순서 또는 그 역순서의 어느 쪽을 사용할까를
가리킨다)ByteOrder
,
ImageInputStream.getByteOrder()
,
ImageInputStream.readBits(int)
public ByteOrder getByteOrder()
ImageInputStream
의 기술:java.nio.ByteOrder
열거의 인스턴스로서 돌려줍니다.
ImageInputStream
내의 getByteOrder
ByteOrder.BIG_ENDIAN
또는 ByteOrder.LITTLE_ENDIAN
의 언젠가
(사용되는 바이트순서를 나타낸다)ByteOrder
,
ImageInputStream.setByteOrder(java.nio.ByteOrder)
public abstract int read() throws IOException
int
로서 돌려줍니다. EOF 에 이르면(자) -1
를 돌려줍니다.
서브 클래스에서 이 메소드를 구현할 필요가 있습니다. 서브 클래스 구현으로 종료하기 전에 스트림 위치를 갱신합니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 할 필요가 있습니다.
ImageInputStream
내의 read
-1
IOException
- 스트림이 닫혀지고 있는 경우public int read(byte[] b) throws IOException
read(b, 0, b.length)
를 호출하는 편리한 메소드입니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 read
b
- 기입해지는 바이트 배열
-1
NullPointerException
- b
가 null
의 경우
IOException
- 입출력 에러가 발생했을 경우public abstract int read(byte[] b, int off, int len) throws IOException
len
바이트까지 읽어들여,b
에 인덱스 off
로부터 포함합니다. 읽어들인 바이트수를 돌려줍니다. 스트림의 끝에 이르렀기 때문에 바이트를 읽어들일 수 없는 경우는,-1
을 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 할 필요가 있습니다.
서브 클래스에서 이 메소드를 구현할 필요가 있습니다. 서브 클래스 구현으로 종료하기 전에 스트림 위치를 갱신합니다.
ImageInputStream
내의 read
b
- 기입해지는 바이트 배열off
- 기입처의 b
내의 개시 위치len
- 읽어들이는 최대 바이트수
-1
IndexOutOfBoundsException
- off
가 부,len
가 부, 또는 off + len
가 b.length
보다 큰 경우
NullPointerException
- b
가 null
의 경우
IOException
- 입출력 에러가 발생했을 경우public void readBytes(IIOByteBuffer buf, int len) throws IOException
ImageInputStream
의 기술:len
바이트까지를 읽어들여, 지정된 IIOByteBuffer
를 변경해 데이터를 검출 가능한 바이트 배열, 오프셋(offset), 및 길이를 나타냅니다. 호출측에서,IIOByteBuffer
로 검출된 데이터를 변경 해서는 안됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readBytes
buf
- 변경되는 IIOByteBuffer 객체len
- byte
의 최대 read수
IOException
- 입출력 에러가 발생했을 경우public boolean readBoolean() throws IOException
ImageInputStream
의 기술:true
의 boolean
치를 돌려주어, 0 의 경우는 false
를 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readBoolean
ImageInputStream
내의 readBoolean
EOFException
- 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public byte readByte() throws IOException
ImageInputStream
의 기술:byte
치로서 돌려줍니다. 0x00
에서 0x7f
까지의 바이트치는 0
에서 127
까지의 정수를 나타냅니다. 0x80
에서 0xff
까지의 값은 -128
으로부터 -1
까지의 0 보다 작은 값을 나타냅니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readByte
ImageInputStream
내의 readByte
EOFException
- 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public int readUnsignedByte() throws IOException
ImageInputStream
의 기술:0xff
로 마스크 해,byte
치로서 돌려줍니다.
따라서,0x00
에서 0x7f
까지의 바이트치는 0
에서 127
까지의 정수치로서 단순하게 돌려주어집니다. 일반적으로은 부의 byte
치를 나타내는 0x80
에서 0xff
까지의 값은,128
에서 255
까지의 정의 정수에 대응 붙이고 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readUnsignedByte
ImageInputStream
내의 readUnsignedByte
EOFException
- 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public short readShort() throws IOException
ImageInputStream
의 기술:short
치로서 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readShort
ImageInputStream
내의 readShort
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getByteOrder()
public int readUnsignedShort() throws IOException
ImageInputStream
의 기술:int
로 변환해, 부호 확장 비트를 없애기 위해서(때문에) 0xffff
로 마스크 합니다. 그 결과를 부호 없음 int
치로서 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readUnsignedShort
ImageInputStream
내의 readUnsignedShort
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getByteOrder()
public char readChar() throws IOException
ImageInputStream
의 기술:readUnsignedShort
와 동등, 다만 결과는 char
데이터형을 사용해 돌려주어집니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readChar
ImageInputStream
내의 readChar
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.readUnsignedShort()
public int readInt() throws IOException
ImageInputStream
의 기술:int
치로서 돌려줍니다.
스트림내의 비트 오프셋(offset)는 무시되어 0 으로서 다루어집니다.
DataInput
내의 readInt
ImageInputStream
내의 readInt
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getByteOrder()
public long readUnsignedInt() throws IOException
ImageInputStream
의 기술:0xffffffffL
로 마스크 합니다. 그 결과를 부호 없음 long
치로서 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readUnsignedInt
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getByteOrder()
public long readLong() throws IOException
ImageInputStream
의 기술:long
치로서 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readLong
ImageInputStream
내의 readLong
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getByteOrder()
public float readFloat() throws IOException
ImageInputStream
의 기술:float
치로서 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readFloat
ImageInputStream
내의 readFloat
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getByteOrder()
public double readDouble() throws IOException
ImageInputStream
의 기술:double
치로서 돌려줍니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readDouble
ImageInputStream
내의 readDouble
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getByteOrder()
public String readLine() throws IOException
ImageInputStream
의 기술:String
로서 돌려주어집니다. 이 메소드는 바이트를 처리하는 것이므로, Unicode 캐릭터 세트의 입력을 완전하게는 지원하지 않습니다.
파일의 마지막이 검출 될 때까지 1 바이트도 읽어들일 수 없었던 경우에는,null
가 돌려주어집니다. 그렇지 않은 경우, 읽힌 각 바이트는 제로 확장에 의해 char
형에 변환됩니다. 문자 '\n'
가 검출되면(자), 이 문자는 파기되어 read는 중지됩니다. 문자 '\r'
가 검출되면(자), 이 문자는 파기되어 그 다음의 바이트가 문자 '\n'
에 변환됩니다만, 이 문자도 파기되어, read가 중지됩니다. 문자 '\n'
와 문자 '\r'
의 어느 쪽인지 보다 전에 파일의 마지막이 검출되면(자), read가 중지됩니다. read가 중지되면(자), 읽혀 파기되어 있지 않은 모든 문자를 수중에 넣은 차례로 포함하고 있는 String
가 돌려주어집니다. 이 캐릭터 라인의 각각의 문자는 \u0100
, 즉 (char) 256
보다 작은 값을 가집니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readLine
ImageInputStream
내의 readLine
IOException
- 입출력 에러가 발생했을 경우public String readUTF() throws IOException
ImageInputStream
의 기술:readUTF
의 범용 규약에서는, 수정 UTF-8 형식에서 encode 된 Unicode 캐릭터 라인의 표현을 읽어들입니다. 읽힌 캐릭터 라인은,String
로서 돌려주어집니다.
우선, 2 바이트를 읽어들여, 그것을 사용해 readUnsignedShort
메소드와 완전히 같은 방법으로 부호 없음 16 비트 정수를 작성합니다. 이 때, 현재의 바이트순서의 설정에 관계없이 네트워크 바이트순서를 사용합니다. 이 정수치는 「UTF 장」이라고 불려 읽히는 추가의 바이트수를 나타냅니다. 다음에, 이 바이트가 그룹 단위로 문자에 변환됩니다. 각 그룹의 길이는, 그룹의 선두 바이트의 값으로부터 계산됩니다. 그룹에 후속의 바이트가 있으면, 그것은 다음의 그룹의 선두 바이트입니다.
그룹의 선두 바이트가 비트 패턴의 0xxxxxxx
(다만,x
는 0
또는 1
을 의미한다)에 일치하는 경우, 그룹은 그 바이트만으로 구성됩니다. 바이트는 제로 확장되어 단일의 문자를 표현합니다.
그룹의 선두 바이트가 비트 패턴 110xxxxx
에 일치하는 경우, 그 그룹은 그 바이트 a
와 2 번째의 바이트 b
로부터 구성됩니다. 바이트 b
가 존재하지 않는 경우 (바이트 a
가 읽힌 마지막 바이트였던 경우)나, 바이트 b
가 비트 패턴 10xxxxxx
에 일치하지 않는 경우에는,UTFDataFormatException
가 throw 됩니다. 그렇지 않은 경우, 그룹은 다음의 문자에 변환됩니다.
(char)(((a& 0x1F) << 6) | (b & 0x3F))
그룹의 선두 바이트가 비트 패턴 1110xxxx
에 일치하는 경우, 그 그룹은 선두 바이트 a
에 가세해, 2 살의 바이트 b
와 c
로부터 구성됩니다. 바이트 c
가 존재하지 않는 경우 (바이트 a
가 읽힌 일련의 바이트의 마지막 2 개(살)에 들어가 있었을 경우)나, 바이트 b
또는 c
가 비트 패턴 10xxxxxx
에 일치하지 않는 경우에는,UTFDataFormatException
가 throw 됩니다. 그렇지 않은 경우, 그룹은 다음의 문자에 변환됩니다.
(char)(((a & 0x0F) << 12) | ((b & 0x3F) << 6) | (c & 0x3F))
그룹의 선두 바이트가 패턴 1111xxxx
나 패턴 10xxxxxx
에 일치하는 경우,UTFDataFormatException
가 throw 됩니다.
이 처리 전체의 어디선가 파일의 마지막이 검출되면(자),EOFException
가 throw 됩니다.
각 그룹이 이 처리로 1 문자에 변환되면(자), 대응하는 그룹이 입력 스트림로부터 읽힌 것과 같은 순서로 각 문자가 수집되어String
를 표현합니다. 그리고, 이 String
가 돌려주어집니다.
현재의 바이트순서의 설정은 무시됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
주: 여기서 사용되는 수정 UTF-8 는 표준 UTF-8 와 호환성이 없습니다. 이 때문에, 표준 UTF-8 를 사용하는 이미지 형식의 구현에서는 이 메소드를 사용하지 말아 주세요.
DataInput
내의 readUTF
ImageInputStream
내의 readUTF
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
UTFDataFormatException
- 캐릭터 라인중의 바이트가,
유효한 수정 UTF-8 형식에서 encode 된 캐릭터 라인 이외에서 만났을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(byte[] b, int off, int len) throws IOException
ImageInputStream
의 기술:len
바이트를 읽어들여, 그것들을 b
에 인덱스 off
로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readFully
ImageInputStream
내의 readFully
b
- 기입해지는 바이트 배열off
- 기입처의 b
내의 개시 위치len
- byte
의 최대 read수
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(byte[] b) throws IOException
ImageInputStream
의 기술:b.length
바이트를 읽어들여, 그것들을 b
에 인덱스 0
으로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
DataInput
내의 readFully
ImageInputStream
내의 readFully
b
- byte
의 배열
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(short[] s, int off, int len) throws IOException
ImageInputStream
의 기술:len
바이트의 short (부호 첨부 16 비트 정수) 치를 읽어들여, 그것들을 s
에 인덱스 off
로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readFully
s
- 기입해지는 short 배열off
- 기입처의 b 내의 개시 위치len
- short
의 최대 read수
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(char[] c, int off, int len) throws IOException
ImageInputStream
의 기술:len
바이트의 char (부호 없음 16 비트 정수) 치를 읽어들여, 그것들을 c
에 인덱스 off
로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readFully
c
- 기입해지는 char 배열off
- 기입처의 b 내의 개시 위치len
- char
의 최대 read수
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(int[] i, int off, int len) throws IOException
ImageInputStream
의 기술:len
바이트의 int (부호 첨부 32 비트 정수) 치를 읽어들여, 그것들을 i
에 인덱스 off
로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readFully
i
- 기입해지는 int 배열off
- 기입처의 b 내의 개시 위치len
- int
의 최대 read수
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(long[] l, int off, int len) throws IOException
ImageInputStream
의 기술:len
바이트의 long (부호 첨부 64 비트 정수) 치를 읽어들여, 그것들을 l
에 인덱스 off
로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readFully
l
- 기입해지는 long 배열off
- 기입처의 b 내의 개시 위치len
- long
의 최대 read수
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(float[] f, int off, int len) throws IOException
ImageInputStream
의 기술:len
바이트의 float (32 비트 IEEE 단정밀도 부동 소수점수(실수)) 치를 읽어들여, 그것들을 f
에 인덱스 off
로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readFully
f
- 기입해지는 float 배열off
- 기입처의 b 내의 개시 위치len
- float
의 최대 read수
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public void readFully(double[] d, int off, int len) throws IOException
ImageInputStream
의 기술:len
바이트의 double (64 비트 IEEE 배정밀도 부동 소수점수(실수)) 치를 읽어들여, 그것들을 d
에 인덱스 off
로부터 포함합니다. 스트림의 마지막에 이르면(자), EOFException
가 throw 됩니다.
스트림내의 비트 오프셋(offset)는, read를 실시하기 전에 0 에 리셋 됩니다.
ImageInputStream
내의 readFully
d
- 기입해지는 double 배열off
- 기입처의 b 내의 개시 위치len
- double
의 최대 read수
EOFException
- 모든 바이트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public long getStreamPosition() throws IOException
ImageInputStream
의 기술:
ImageInputStream
내의 getStreamPosition
IOException
- 입출력 에러가 발생했을 경우public int getBitOffset() throws IOException
ImageInputStream
의 기술:readBits
메소드의 호출로 암묵적으로 갱신됩니다. 값 0 은 읽히는 바이트의 최상정도 비트, 값 7 은 최하정도 비트를 나타냅니다.
비트 오프셋(offset)는, 스트림을 최초로 열 때 0 으로 설정되어seek
,skipBytes
, 또는 read
나 readFully
메소드중 한쪽이 불려 가면(자) 0 에 리셋 됩니다.
ImageInputStream
내의 getBitOffset
int
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.setBitOffset(int)
public void setBitOffset(int bitOffset) throws IOException
ImageInputStream
의 기술:getStreamPosition
로부터 반환되는, 스트림내의 바이트 오프셋(offset)는 변경되지 않습니다. 값 0 은 읽히는 바이트의 최상정도 비트, 값 7 은 최하정도 비트를 나타냅니다.
ImageInputStream
내의 setBitOffset
bitOffset
- 목적의 오프셋(offset)로,
0 에서 7 까지의 int
IOException
- 입출력 에러가 발생했을 경우ImageInputStream.getBitOffset()
public int readBit() throws IOException
ImageInputStream
의 기술:0
또는 1
의 int
로서 돌려줍니다. 비트 오프셋(offset)는 1 두개증가해, 8 을 법으로서 감 분 합니다.
ImageInputStream
내의 readBit
0
또는 1
의
int
EOFException
- 모든 비트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public long readBits(int numBits) throws IOException
ImageInputStream
의 기술:long
로서 돌려줍니다. 읽어들인 최초의 비트가 출력의 최상정도 비트가 됩니다. read는,getStreamPosition
로 지정되는 바이트내의 getBitOffset
로 지정되는 비트 위치로부터 개시됩니다. 비트 오프셋(offset)는 numBits
두개증가해, 8 을 법으로서 감 분 합니다.
스트림의 바이트순서는 이 메소드에 영향을 주지 않습니다. 이 메소드의 반환값은 비트가 동시에 읽혔는지와 같이 구축되어 반환값의 우측으로 쉬프트 됩니다. 이것을 다음의 의사 코드로 가리킵니다.
long accum = 0L; for (int i = 0; i < numBits; i++) { accum <<= 1; // Shift left one bit to make room accum |= readBit(); }따라서, 역네트워크 바이트순서가 사용되고 있는 경우 (즉,
getByteOrder() == false
),readBits(32)
의 결과가 readInt()
의 결과와 다른 경우가 있습니다.
모든 비트를 읽어들이기 전에 스트림의 마지막을 검출했을 경우,EOFException
가 throw 됩니다.
ImageInputStream
내의 readBits
numBits
- 읽어들이는 비트수를 나타낸다
0 에서 64 까지의 int
long
의 비트열
EOFException
- 모든 비트를 읽어들이기 전에,
이 스트림의 마지막에 이르렀을 경우
IOException
- 입출력 에러가 발생했을 경우public long length()
-1L
를 돌려줍니다. 서브 클래스에서 이 메소드를 오버라이드(override) 해, 실제의 길이의 정보를 지정할 필요가 있습니다.
ImageInputStream
내의 length
public int skipBytes(int n) throws IOException
seek(getStreamPosition() + n)
를 호출해, 현재의 스트림 위치를 전진시킵니다.
비트 오프셋(offset)는 0 에 리셋 됩니다.
DataInput
내의 skipBytes
ImageInputStream
내의 skipBytes
n
- 전방으로 시크 하는 바이트수
int
IOException
- 개시 또는 종료 위치를 계산할 때에 getStreamPosition
가 IOException
를 throw 하는 경우public long skipBytes(long n) throws IOException
seek(getStreamPosition() + n)
를 호출해, 현재의 스트림 위치를 전진시킵니다.
비트 오프셋(offset)는 0 에 리셋 됩니다.
ImageInputStream
내의 skipBytes
n
- 전방으로 시크 하는 바이트수
long
IOException
- 개시 또는 종료 위치를 계산할 때에 getStreamPosition
가 IOException
를 throw 하는 경우public void seek(long pos) throws IOException
ImageInputStream
의 기술: pos
가 getflushedPosition
로부터 반환되는 플래시 위치보다 작은 경우는,IndexOutOfBoundsException
가 throw 됩니다.
시크로 파일의 마지막을 통과하는 것은 정상적이고,EOFException
는 읽을 경우만 throw 됩니다.
ImageInputStream
내의 seek
pos
- 목적의 파일 포인터 위치를 나타낸다
long
IOException
- 그 외의 입출력 에러가 발생했을 경우public void mark()
ImageInputStream
내의 mark
public void reset() throws IOException
이전에 마크 붙이고 된 위치가 스트림의 파기된 부분인 경우에는 IOException
가 throw 됩니다.
ImageInputStream
내의 reset
IOException
- 입출력 에러가 발생했을 경우public void flushBefore(long pos) throws IOException
ImageInputStream
의 기술:IndexOutOfBoundsException
가 throw 됩니다.
flushBefore
를 호출하면(자), 이 인터페이스를 구현하는 클래스가, 스트림로부터 데이터를 포함하는데 사용하는 메모리나 디스크 스페이스등의 자원을 해제할 수 있습니다.
ImageInputStream
내의 flushBefore
pos
- 플래시 되는 스트림 접두사의
길이를 나타내는 long
IOException
- 입출력 에러가 발생했을 경우public void flush() throws IOException
ImageInputStream
의 기술:flushBefore(getStreamPosition())
와 같습니다.
ImageInputStream
내의 flush
IOException
- 입출력 에러가 발생했을 경우public long getFlushedPosition()
ImageInputStream
의 기술:flushBefore
호출에게 건네진 모든 값의 최대치가 됩니다.
ImageInputStream
내의 getFlushedPosition
long
public boolean isCached()
ImageInputStream
내의 isCached
ImageInputStream
가 데이터를 캐쉬에 포함하는 경우는
true
ImageInputStream.isCachedMemory()
,
ImageInputStream.isCachedFile()
public boolean isCachedMemory()
ImageInputStream
내의 isCachedMemory
ImageInputStream
가 데이터를
메인 메모리에 캐쉬하는 경우는 true
ImageInputStream.isCached()
,
ImageInputStream.isCachedFile()
public boolean isCachedFile()
ImageInputStream
내의 isCachedFile
ImageInputStream
가 데이터를
임시 파일에 캐쉬하는 경우는 true
ImageInputStream.isCached()
,
ImageInputStream.isCachedMemory()
public void close() throws IOException
ImageInputStream
의 기술:IOException
가 throw 될까 부정한 동작이 실행되는 경우가 있습니다. 이 메소드를 호출하면(자), 이 인터페이스를 구현하는 클래스가, 메모리, 디스크 스페이스, 또는 파일 기술자등의 스트림에 관련하는 자원을 해제할 수 있습니다.
ImageInputStream
내의 close
IOException
- 입출력 에러가 발생했을 경우protected void finalize() throws Throwable
close
메소드를 호출해, 열려 있는 입력 소스를 모두 닫습니다. 이 메소드를, 어플리케이션 코드로부터 호출해서는 안됩니다.
Object
내의 finalize
Throwable
- 슈퍼 클래스의 finalize시에 에러가 발생했을 경우
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.