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

クラスFileCacheImageOutputStream

    • コンストラクタの詳細

      • FileCacheImageOutputStream

        public FileCacheImageOutputStream​(OutputStream stream,
                                          File cacheDir)
                                   throws IOException
        指定されたoutputStreamに書き込むFileCacheImageOutputStreamを構築します。

        一時ファイルがキャッシュとして使用されます。 cacheDirnullではなく、ディレクトリである場合、ファイルがそこに作成されます。 nullの場合、システム固有のデフォルト一時ファイル・ディレクトリが使用されます。詳細はFile.createTempFileのドキュメントを参照してください。

        パラメータ:
        stream - 書込み先のOutputStream
        cacheDir - キャッシュ・ファイルが作成される場所を示すFile。システム・ディレクトリを使用する場合はnull
        例外:
        IllegalArgumentException - streamnullの場合。
        IllegalArgumentException - cacheDirnull以外であるが、ディレクトリではない場合。
        IOException - キャッシュ・ファイルを作成できない場合。
    • メソッドの詳細

      • 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メソッドを使用してこれを保証できます。

        定義:
        write、インタフェース: DataOutput
        定義:
        write、インタフェース: ImageOutputStream
        定義:
        write、クラス: ImageOutputStreamImpl
        パラメータ:
        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メソッドを使用してこれを保証できます。

        定義:
        write、インタフェース: DataOutput
        定義:
        write、インタフェース: ImageOutputStream
        定義:
        write、クラス: ImageOutputStreamImpl
        パラメータ:
        b - 書き込まれるbyte配列。
        off - データの開始オフセット。
        len - 書き込むbyte数。
        例外:
        IOException - 入出力エラーが発生した場合。
      • length

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

        public void seek​(long pos)
                  throws IOException
        現在のストリーム位置を設定してビット・オフセットを0にリセットします。 シークでファイルの終わりを通過することは正常であり、EOFExceptionは読込みの場合のみスローされます。 書込みが実行されるまで、ファイル長は増加しません。
        定義:
        seek、インタフェース: ImageInputStream
        オーバーライド:
        seek、クラス: ImageInputStreamImpl
        パラメータ:
        pos - 目的のファイル・ポインタ位置を示すlong
        例外:
        IndexOutOfBoundsException - posがフラッシュ位置よりも小さい場合。
        IOException - その他の入出力エラーが発生した場合。
      • close

        public void close​()
                   throws IOException
        このFileCacheImageOutputStreamを閉じます。 保留中のデータはすべて出力にフラッシュされ、キャッシュ・ファイルは閉じられて削除されます。 出力先OutputStreamは閉じられません。
        定義:
        close、インタフェース: AutoCloseable
        定義:
        close、インタフェース: Closeable
        定義:
        close、インタフェース: ImageInputStream
        オーバーライド:
        close、クラス: ImageInputStreamImpl
        例外:
        IOException - エラーが発生した場合
      • flushBefore

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

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

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