モジュール java.base
パッケージ java.util.zip

クラスDeflaterOutputStream

  • すべての実装されたインタフェース:
    Closeable, Flushable, AutoCloseable
    直系の既知のサブクラス:
    GZIPOutputStream, ZipOutputStream

    public class DeflaterOutputStream
    extends FilterOutputStream
    このクラスは、deflate圧縮形式で圧縮されているデータの出力ストリーム・フィルタを実装します。 また、GZIPOutputStreamなどのほかの型の圧縮フィルタはこのクラスに基づいています。
    導入されたバージョン:
    1.1
    関連項目:
    Deflater
    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      protected byte[] buf
      圧縮データを書き込むための出力バッファです。
      protected Deflater def
      このストリームで使用するコンプレッサです。
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      DeflaterOutputStream​(OutputStream out)
      デフォルトのコンプレッサおよびバッファ・サイズで新しい出力ストリームを作成します。
      DeflaterOutputStream​(OutputStream out, boolean syncFlush)
      デフォルトのコンプレッサ、デフォルトのバッファ・サイズ、および指定されたフラッシュ・モードで新しい出力ストリームを作成します。
      DeflaterOutputStream​(OutputStream out, Deflater def)
      指定されたコンプレッサおよびデフォルトのバッファ・サイズで新しい出力ストリームを作成します。
      DeflaterOutputStream​(OutputStream out, Deflater def, boolean syncFlush)
      指定されたコンプレッサ、フラッシュ・モード、およびデフォルトのバッファ・サイズで新しい出力ストリームを作成します。
      DeflaterOutputStream​(OutputStream out, Deflater def, int size)
      指定されたコンプレッサおよびバッファ・サイズで新しい出力ストリームを作成します。
      DeflaterOutputStream​(OutputStream out, Deflater def, int size, boolean syncFlush)
      指定されたコンプレッサ、バッファ・サイズ、およびフラッシュ・モードで新しい出力ストリームを作成します。
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      void close()
      残りの圧縮データを出力ストリームに書き込み、ストリームを閉じます。
      protected void deflate()
      圧縮データの次のブロックを出力ストリームに書き込みます。
      void finish()
      出力ストリームへの圧縮データの書込みを終了します。このときストリームは閉じられません。
      void flush()
      圧縮された出力ストリームをフラッシュします。
      void write​(byte[] b, int off, int len)
      バイト配列を圧縮出力ストリームに書き込みます。
      void write​(int b)
      バイトを圧縮出力ストリームに書き込みます。
    • フィールドの詳細

      • def

        protected Deflater def
        このストリームで使用するコンプレッサです。
      • buf

        protected byte[] buf
        圧縮データを書き込むための出力バッファです。
    • コンストラクタの詳細

      • DeflaterOutputStream

        public DeflaterOutputStream​(OutputStream out,
                                    Deflater def,
                                    int size,
                                    boolean syncFlush)
        指定されたコンプレッサ、バッファ・サイズ、およびフラッシュ・モードで新しい出力ストリームを作成します。
        パラメータ:
        out - 出力ストリーム
        def - コンプレッサ(「デフレータ」)
        size - 出力バッファ・サイズ
        syncFlush - trueの場合、このインスタンスのflush()メソッドは、出力ストリームをフラッシュする前に、フラッシュ・モードDeflater.SYNC_FLUSHで、コンプレッサをフラッシュし、trueでない場合は、出力ストリームのみをフラッシュします。
        例外:
        IllegalArgumentException - size <= 0の場合
        導入されたバージョン:
        1.7
      • DeflaterOutputStream

        public DeflaterOutputStream​(OutputStream out,
                                    Deflater def,
                                    int size)
        指定されたコンプレッサおよびバッファ・サイズで新しい出力ストリームを作成します。

        4つの引数のコンストラクタDeflaterOutputStream(out、def、size、false)を呼び出した場合と同様に、新しい出力ストリーム・インスタンスが作成されます。

        パラメータ:
        out - 出力ストリーム
        def - コンプレッサ(「デフレータ」)
        size - 出力バッファ・サイズ
        例外:
        IllegalArgumentException - size <= 0の場合
      • DeflaterOutputStream

        public DeflaterOutputStream​(OutputStream out,
                                    Deflater def,
                                    boolean syncFlush)
        指定されたコンプレッサ、フラッシュ・モード、およびデフォルトのバッファ・サイズで新しい出力ストリームを作成します。
        パラメータ:
        out - 出力ストリーム
        def - コンプレッサ(「デフレータ」)
        syncFlush - trueの場合、このインスタンスのflush()メソッドは、出力ストリームをフラッシュする前に、フラッシュ・モードDeflater.SYNC_FLUSHで、コンプレッサをフラッシュし、trueでない場合は、出力ストリームのみをフラッシュします。
        導入されたバージョン:
        1.7
      • DeflaterOutputStream

        public DeflaterOutputStream​(OutputStream out,
                                    Deflater def)
        指定されたコンプレッサおよびデフォルトのバッファ・サイズで新しい出力ストリームを作成します。

        3つの引数のコンストラクタDeflaterOutputStream(out、def、false)を呼び出した場合と同様に、新しい出力ストリーム・インスタンスが作成されます。

        パラメータ:
        out - 出力ストリーム
        def - コンプレッサ(「デフレータ」)
      • DeflaterOutputStream

        public DeflaterOutputStream​(OutputStream out,
                                    boolean syncFlush)
        デフォルトのコンプレッサ、デフォルトのバッファ・サイズ、および指定されたフラッシュ・モードで新しい出力ストリームを作成します。
        パラメータ:
        out - 出力ストリーム
        syncFlush - trueの場合、このインスタンスのflush()メソッドは、出力ストリームをフラッシュする前に、フラッシュ・モードDeflater.SYNC_FLUSHで、コンプレッサをフラッシュし、trueでない場合は、出力ストリームのみをフラッシュします。
        導入されたバージョン:
        1.7
      • DeflaterOutputStream

        public DeflaterOutputStream​(OutputStream out)
        デフォルトのコンプレッサおよびバッファ・サイズで新しい出力ストリームを作成します。

        2つの引数のコンストラクタDeflaterOutputStream(out、false)を呼び出した場合と同様に、新しい出力ストリーム・インスタンスが作成されます。

        パラメータ:
        out - 出力ストリーム
    • メソッドの詳細

      • write

        public void write​(int b)
                   throws IOException
        バイトを圧縮出力ストリームに書き込みます。 このメソッドはバイトが書込み可能になるまでブロックされます。
        オーバーライド:
        write、クラスFilterOutputStream
        パラメータ:
        b - 書き込まれるバイト
        例外:
        IOException - 入出力エラーが発生した場合
      • write

        public void write​(byte[] b,
                          int off,
                          int len)
                   throws IOException
        バイト配列を圧縮出力ストリームに書き込みます。 このメソッドは、すべてのバイトが書き込まれるまでブロックされます。
        オーバーライド:
        write、クラスFilterOutputStream
        パラメータ:
        b - 書き込まれるデータ
        off - データの開始オフセット
        len - データの長さ
        例外:
        IOException - 入出力エラーが発生した場合
        関連項目:
        FilterOutputStream.write(int)
      • finish

        public void finish()
                    throws IOException
        出力ストリームへの圧縮データの書込みを終了します。このときストリームは閉じられません。 複数のフィルタを続けて同じ出力ストリームに適用するときに、このメソッドを使用します。
        例外:
        IOException - 入出力エラーが発生した場合
      • deflate

        protected void deflate()
                        throws IOException
        圧縮データの次のブロックを出力ストリームに書き込みます。
        例外:
        IOException - 入出力エラーが発生した場合
      • flush

        public void flush()
                   throws IOException
        圧縮された出力ストリームをフラッシュします。 この圧縮された出力ストリームが構築されるときに、syncFlushtrueの場合、このメソッドはまずフラッシュ・モードDeflater.SYNC_FLUSHでベースとなるcompressorをフラッシュして、すべての保留中のデータを出力ストリームに強制的にフラッシュさせ、次に出力ストリームをフラッシュします。 そうでない場合、このメソッドはcompressorをフラッシュせずに出力ストリームのみをフラッシュします。
        定義:
        flush、インタフェースFlushable
        オーバーライド:
        flush、クラスFilterOutputStream
        例外:
        IOException - 入出力エラーが発生した場合
        導入されたバージョン:
        1.7
        関連項目:
        FilterOutputStream.out