public class MemoryCacheImageInputStream extends ImageInputStreamImpl
InputStream
から入力を取得するImageInputStream
の実装です。メモリー・バッファには、少なくとも破棄位置と現在の読込み位置との間のデータがキャッシュされます。
一般的に、通常のInputStream
から読み込む場合は、FileCacheImageInputStream
を使用することをお薦めします。このクラスは、書込み可能な一時ファイルを作成できない場合のために用意されています。
bitOffset, byteOrder, flushedPos, streamPos
コンストラクタと説明 |
---|
MemoryCacheImageInputStream(InputStream stream)
指定された
InputStream から読み込むMemoryCacheImageInputStream を構築します。 |
修飾子と型 | メソッドと説明 |
---|---|
void |
close()
この
MemoryCacheImageInputStream を閉じてキャッシュを解放します。 |
protected void |
finalize()
ガベージ・コレクションの前にこのオブジェクトをファイナライズします。
|
void |
flushBefore(long pos)
指示された位置より前のストリームの先頭部分を破棄します。
|
boolean |
isCached()
後方へのシークを可能にするために、この
ImageInputStream がデータをキャッシュするため、true が返されます。 |
boolean |
isCachedFile()
この
ImageInputStream はファイル・キャッシュを維持しないため、false が返されます。 |
boolean |
isCachedMemory()
この
ImageInputStream はメイン・メモリー・キャッシュを維持するため、true が返されます。 |
int |
read()
ストリームから1バイトを読み込み、それを0から255までの
int として返します。 |
int |
read(byte[] b, int off, int len)
ストリームから最大
len バイトを読み込み、b にインデックスoff から格納します。 |
checkClosed, flush, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, length, mark, read, readBit, readBits, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, seek, setBitOffset, setByteOrder, skipBytes, skipBytes
public MemoryCacheImageInputStream(InputStream stream)
InputStream
から読み込むMemoryCacheImageInputStream
を構築します。stream
- 読込み元のInputStream
。IllegalArgumentException
- stream
がnull
の場合。public int read() throws IOException
ImageInputStreamImpl
int
として返します。EOFに達すると-1
を返します。
サブクラスでこのメソッドを実装する必要があります。サブクラス実装で終了する前にストリーム位置を更新します。
ストリーム内のビット・オフセットは、読込みを行う前に0にリセットする必要があります。
read
、インタフェース: ImageInputStream
read
、クラス: ImageInputStreamImpl
-1
。IOException
- ストリームが閉じられている場合。public int read(byte[] b, int off, int len) throws IOException
ImageInputStreamImpl
len
バイトを読み込み、b
にインデックスoff
から格納します。ストリームの終わりに達したためにバイトを読み込めない場合は、-1
を返します。
ストリーム内のビット・オフセットは、読込みを行う前に0にリセットする必要があります。
サブクラスでこのメソッドを実装する必要があります。サブクラス実装で終了する前にストリーム位置を更新します。
read
、インタフェース: ImageInputStream
read
、クラス: ImageInputStreamImpl
b
- 書き込まれるバイト配列。off
- 書込み先のb
内の開始位置。len
- 読み込む最大バイト数。-1
。IOException
- 入出力エラーが発生した場合。public void flushBefore(long pos) throws IOException
ImageInputStream
IndexOutOfBoundsException
がスローされます。
flushBefore
を呼び出すと、このインタフェースを実装するクラスが、ストリームからデータを格納するのに使用するメモリーやディスク・スペースなどのリソースを解放できます。
flushBefore
、インタフェース: ImageInputStream
flushBefore
、クラス: ImageInputStreamImpl
pos
- フラッシュされるストリーム接頭辞の長さを示すlong
。IOException
- 入出力エラーが発生した場合。public boolean isCached()
ImageInputStream
がデータをキャッシュするため、true
が返されます。isCached
、インタフェース: ImageInputStream
isCached
、クラス: ImageInputStreamImpl
true
。isCachedMemory()
, isCachedFile()
public boolean isCachedFile()
ImageInputStream
はファイル・キャッシュを維持しないため、false
が返されます。isCachedFile
、インタフェース: ImageInputStream
isCachedFile
、クラス: ImageInputStreamImpl
false
。isCached()
, isCachedMemory()
public boolean isCachedMemory()
ImageInputStream
はメイン・メモリー・キャッシュを維持するため、true
が返されます。isCachedMemory
、インタフェース: ImageInputStream
isCachedMemory
、クラス: ImageInputStreamImpl
true
。isCached()
, isCachedFile()
public void close() throws IOException
MemoryCacheImageInputStream
を閉じてキャッシュを解放します。ソースInputStream
は閉じられません。close
、インタフェース: Closeable
close
、インタフェース: AutoCloseable
close
、インタフェース: ImageInputStream
close
、クラス: ImageInputStreamImpl
IOException
- 入出力エラーが発生した場合。protected void finalize() throws Throwable
close
メソッドを呼び出して、開いている入力ソースをすべて閉じます。このメソッドを、アプリケーション・コードから呼び出してはいけません。finalize
、クラス: ImageInputStreamImpl
Throwable
- スーパー・クラスのファイナライズ時にエラーが発生した場合。WeakReference
, PhantomReference
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.