モジュール java.desktop
パッケージ javax.imageio.stream

クラスMemoryCacheImageOutputStream

すべての実装されたインタフェース:
Closeable, DataInput, DataOutput, AutoCloseable, ImageInputStream, ImageOutputStream

public class MemoryCacheImageOutputStream extends ImageOutputStreamImpl
出力を通常のOutputStreamに書き込むImageOutputStreamの実装です。 メモリー・バッファには、少なくとも破棄位置と現在の書込み位置との間のデータがキャッシュされます。 OutputStreamを使用するのはコンストラクタのみなので、このクラスは読み込み、変更、または書込み操作に使用できない場合があります。 読込みは、キャッシュに書込み済みでまだフラッシュされていないストリーム部分についてのみ行うことができます。
  • コンストラクタの詳細

    • MemoryCacheImageOutputStream

      public MemoryCacheImageOutputStream(OutputStream stream)
      指定されたOutputStreamに書き込むMemoryCacheImageOutputStreamを構築します。
      パラメータ:
      stream - 書込み先のOutputStream
      例外:
      IllegalArgumentException - streamnullの場合。
  • メソッドの詳細

    • read

      public int read() throws IOException
      クラスからコピーされた説明: ImageInputStreamImpl
      ストリームから1バイトを読み込み、それを0から255までのintとして返します。 EOFに達すると-1を返します。

      サブクラスでこのメソッドを実装する必要があります。 サブクラス実装で終了する前にストリーム位置を更新します。

      ストリーム内のビット・オフセットは、読込みを行う前に0にリセットする必要があります。

      定義:
      read、インタフェース: ImageInputStream
      定義:
      read、クラス: ImageInputStreamImpl
      戻り値:
      ストリーム内の次のバイトの値。または、EOFに達した場合は-1
      例外:
      IOException - ストリームが閉じられている場合。
    • read

      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 - 読み込む最大バイト数。
      戻り値:
      実際に読み込まれたバイト数、またはEOFを示す-1
      例外:
      IOException - 入出力エラーが発生した場合。
    • write

      public void write(int b) throws IOException
      インタフェースからコピーされた説明: ImageOutputStream
      ストリームの現在の位置に1バイト書き込みます。 bの上位24ビットは無視されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。 実装側は、ImageOutputStreamImplflushBitsメソッドを使用してこれを保証できます。

      パラメータ:
      b - 下位8ビットが書き込まれるint
      例外:
      IOException - 入出力エラーが発生した場合。
    • write

      public void write(byte[] b, int off, int len) throws IOException
      インタフェースからコピーされた説明: ImageOutputStream
      バイトのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 バイトb[off]を最初に書き込み、次にバイトb[off+1]を書き込む、という具合になります。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。 実装側は、ImageOutputStreamImplflushBitsメソッドを使用してこれを保証できます。

      パラメータ:
      b - 書き込まれるbyte配列。
      off - データの開始オフセット。
      len - 書き込むbyte数。
      例外:
      IOException - 入出力エラーが発生した場合。
    • length

      public long length()
      クラスからコピーされた説明: ImageInputStreamImpl
      ストリームが未知の長さであることを示す-1Lを返します。 サブクラスでこのメソッドをオーバーライドして、実際の長さの情報を指定する必要があります。
      定義:
      length、インタフェース: ImageInputStream
      オーバーライド:
      length、クラス: ImageInputStreamImpl
      戻り値:
      未知の長さを示す -1L
    • isCached

      public boolean isCached()
      後方へのシークを可能にするために、このImageOutputStreamがデータをキャッシュするため、trueが返されます。
      定義:
      isCached、インタフェース: ImageInputStream
      オーバーライド:
      isCached、クラス: ImageInputStreamImpl
      戻り値:
      true
      関連項目:
    • isCachedFile

      public boolean isCachedFile()
      このImageOutputStreamはファイル・キャッシュを維持しないため、falseが返されます。
      定義:
      isCachedFile、インタフェース: ImageInputStream
      オーバーライド:
      isCachedFile、クラス: ImageInputStreamImpl
      戻り値:
      false
      関連項目:
    • isCachedMemory

      public boolean isCachedMemory()
      このImageOutputStreamはメイン・メモリー・キャッシュを維持するため、trueが返されます。
      定義:
      isCachedMemory、インタフェース: ImageInputStream
      オーバーライド:
      isCachedMemory、クラス: ImageInputStreamImpl
      戻り値:
      true
      関連項目:
    • close

      public void close() throws IOException
      このMemoryCacheImageOutputStreamを閉じます。 保留中のデータはすべて出力にフラッシュされ、キャッシュは解放されます。 出力先OutputStreamは閉じられません。
      例外:
      IOException - 入出力エラーが発生した場合。
    • flushBefore

      public void flushBefore(long pos) throws IOException
      インタフェースからコピーされた説明: ImageOutputStream
      指定された位置より前のデータをすべて、OutputStreamFileなどの基本となる出力先にフラッシュします。 ストリームのフラッシュ部分にシークするとIndexOutOfBoundsExceptionがスローされます。
      パラメータ:
      pos - 出力先にフラッシュされるストリーム接頭辞の長さを含むlong
      例外:
      IOException - 入出力エラーが発生した場合。