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

クラスMemoryCacheImageInputStream

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


    public class MemoryCacheImageInputStream
    extends ImageInputStreamImpl
    通常のInputStreamから入力を取得するImageInputStreamの実装です。 メモリー・バッファには、少なくとも破棄位置と現在の読込み位置との間のデータがキャッシュされます。

    一般的に、通常のInputStreamから読み込む場合は、FileCacheImageInputStreamを使用することをお薦めします。 このクラスは、書込み可能な一時ファイルを作成できない場合のために用意されています。

    • コンストラクタの詳細

      • MemoryCacheImageInputStream

        public MemoryCacheImageInputStream​(InputStream stream)
        指定されたInputStreamから読み込むMemoryCacheImageInputStreamを構築します。
        パラメータ:
        stream - 読込み元のInputStream
        例外:
        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 - 入出力エラーが発生した場合。
      • flushBefore

        public void flushBefore​(long pos)
                         throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        指示された位置より前のストリームの先頭部分を破棄します。 ストリームのフラッシュされた部分内のオフセットにシークしようとすると、IndexOutOfBoundsExceptionがスローされます。

        flushBeforeを呼び出すと、このインタフェースを実装するクラスが、ストリームからデータを格納するのに使用するメモリーやディスク・スペースなどのリソースを解放できます。

        定義:
        flushBefore、インタフェース: ImageInputStream
        オーバーライド:
        flushBefore、クラス: ImageInputStreamImpl
        パラメータ:
        pos - フラッシュされるストリーム接頭辞の長さを示すlong
        例外:
        IOException - 入出力エラーが発生した場合。
      • finalize

        @Deprecated(since="9")
        protected void finalize​()
                         throws Throwable
        非推奨。 finalizeメソッドは推奨されていません。 クリーンアップを実行するためにfinalizeをオーバーライドするサブクラスは、代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalizeメソッドを削除するように変更する必要があります。 finalizeメソッドをオーバーライドする場合、実装では、super.finalize()Object.finalize()の説明に従って呼び出されることを明示的に確認する必要があります。 移行オプションの詳細については、Object.finalize()の仕様を参照してください。
        ガベージ・コレクションの前にこのオブジェクトをファイナライズします。 closeメソッドを呼び出して、開いている入力ソースをすべて閉じます。 このメソッドを、アプリケーション・コードから呼び出してはいけません。
        オーバーライド:
        finalize、クラス: ImageInputStreamImpl
        例外:
        Throwable - スーパー・クラスのファイナライズ時にエラーが発生した場合。
        関連項目:
        WeakReference, PhantomReference