java.lang.Object
java.io.InputStream
java.io.FilterInputStream
java.util.zip.InflaterInputStream
- すべての実装されたインタフェース:
Closeable
,AutoCloseable
- 直系の既知のサブクラス:
GZIPInputStream
,ZipInputStream
public class InflaterInputStream extends FilterInputStream
このクラスは、deflate圧縮形式で圧縮解除されたデータのストリーム・フィルタを実装します。 GZIPInputStreamなどのほかの圧縮解除フィルタはこのクラスに基づいています。
- 導入されたバージョン:
- 1.1
- 関連項目:
-
フィールドのサマリー
修飾子と型フィールド説明protected byte[]
圧縮解除に使用する入力バッファです。protected Inflater
このストリームに使用するデコンプレッサです。protected int
入力バッファに読み込まれた合計バイト数。クラスjava.io.FilterInputStreamで宣言されたフィールド
in
-
コンストラクタのサマリー
コンストラクタ説明デフォルトのデコンプレッサおよびバッファ・サイズで、新しい入力ストリームを作成します。InflaterInputStream
(InputStream in, Inflater inf) 指定されたデコンプレッサおよびデフォルトのバッファ・サイズで、新しい入力ストリームを作成します。InflaterInputStream
(InputStream in, Inflater inf, int size) 指定されたデコンプレッサおよびバッファ・サイズで、新しい入力ストリームを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明int
EOFに達したあとで呼び出した場合は0を返します。そうでない場合は常に1を返します。void
close()
この入力ストリームを閉じて、そのストリームに関連するすべてのシステム・リソースを解放します。protected void
fill()
入力バッファを、圧縮解除するデータで満たします。void
mark
(int readlimit) この入力ストリームの現在位置にマークを設定します。boolean
この入力ストリームがmark
およびreset
メソッドをサポートしているかどうかを判定します。int
read()
圧縮解除データのバイトを読み込みます。int
read
(byte[] b, int off, int len) 圧縮されていないデータをバイトの配列に読み込み、膨張したバイト数を返します。void
reset()
このストリームを、この入力ストリームで最後にmark
メソッドが呼び出されたときの位置に再配置します。long
skip
(long n) 圧縮解除データの指定されたバイト数をスキップします。クラスjava.io.FilterInputStreamで宣言されたメソッド
read
クラスjava.io.InputStreamで宣言されたメソッド
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
フィールド詳細
-
inf
protected Inflater infこのストリームに使用するデコンプレッサです。 -
buf
protected byte[] buf圧縮解除に使用する入力バッファです。 -
len
protected int len入力バッファに読み込まれた合計バイト数。
-
-
コンストラクタの詳細
-
InflaterInputStream
public InflaterInputStream(InputStream in, Inflater inf, int size) 指定されたデコンプレッサおよびバッファ・サイズで、新しい入力ストリームを作成します。- パラメータ:
in
- 入力ストリームinf
- デコンプレッサ(「インフレータ」)size
- 入力バッファ・サイズ- 例外:
IllegalArgumentException
-size <= 0
の場合
-
InflaterInputStream
public InflaterInputStream(InputStream in, Inflater inf) 指定されたデコンプレッサおよびデフォルトのバッファ・サイズで、新しい入力ストリームを作成します。- パラメータ:
in
- 入力ストリームinf
- デコンプレッサ(「インフレータ」)
-
InflaterInputStream
public InflaterInputStream(InputStream in) デフォルトのデコンプレッサおよびバッファ・サイズで、新しい入力ストリームを作成します。- パラメータ:
in
- 入力ストリーム
-
-
メソッドの詳細
-
read
public int read() throws IOException圧縮解除データのバイトを読み込みます。 このメソッドは、圧縮解除に十分な入力が利用できるようになるまでブロックされます。- オーバーライド:
read
、クラスFilterInputStream
- 戻り値:
- 読み込まれたバイト。圧縮された入力の最後に達した場合は -1
- 例外:
IOException
- 入出力エラーが発生した場合- 関連項目:
-
read
public int read(byte[] b, int off, int len) throws IOException 圧縮されていないデータをバイトの配列に読み込み、膨張したバイト数を返します。len
がゼロでない場合、このメソッドは、いくらかの入力が圧縮解除可能になるまでブロックされます。それ以外の場合、バイトは読み取られず、0
が返されます。このメソッドがゼロ以外の整数nを返す場合、
buf[off]
からbuf[off+
n-1]
には非圧縮データが含まれます。 要素buf[off+
n]
からbuf[off+
len-1]
のコンテンツは、InputStream
スーパークラスの指定とは逆に未定義であるため、レート操作中に実装でこれらの要素を変更できます。 このメソッドが-1
を返すか、例外をスローすると、buf[off]
からbuf[off+
len-1]
のコンテンツは未定義になります。- オーバーライド:
read
、クラスFilterInputStream
- パラメータ:
b
- データの読込み先のバッファoff
- 転送先配列の開始オフセットb
len
- 読み込まれる最大バイト数- 戻り値:
- 実際の増幅バイト数。圧縮入力の最後に達するか、プリセット辞書が必要な場合は -1
- 例外:
NullPointerException
-b
がnull
である場合。IndexOutOfBoundsException
-off
が負の値の場合、len
が負の値の場合、あるいはlen
がb.length - off
より大きい場合ZipException
- ZIP形式エラーが発生した場合IOException
- 入出力エラーが発生した場合- 関連項目:
-
available
public int available() throws IOExceptionEOFに達したあとで呼び出した場合は0を返します。そうでない場合は常に1を返します。このメソッドは、ブロックなしで読み込める実際のバイト数を返すためのものではありません。
- オーバーライド:
available
、クラスFilterInputStream
- 戻り値:
- EOFの前では1、EOFの後では0。
- 例外:
IOException
- 入出力エラーが発生した場合。
-
skip
public long skip(long n) throws IOException 圧縮解除データの指定されたバイト数をスキップします。- オーバーライド:
skip
、クラスFilterInputStream
- パラメータ:
n
- スキップするバイト数- 戻り値:
- 実際にスキップされたバイト数。
- 例外:
IOException
- 入出力エラーが発生した場合IllegalArgumentException
-n < 0
の場合- 関連項目:
-
close
public void close() throws IOExceptionこの入力ストリームを閉じて、そのストリームに関連するすべてのシステム・リソースを解放します。- 定義:
close
、インタフェースAutoCloseable
- 定義:
close
、インタフェースCloseable
- オーバーライド:
close
、クラスFilterInputStream
- 例外:
IOException
- 入出力エラーが発生した場合- 関連項目:
-
fill
protected void fill() throws IOException入力バッファを、圧縮解除するデータで満たします。- 実装要件:
- このメソッドは、要素
0
から入力バッファbuf
に最大buf
の.lengthバイトを読み込みます。len
フィールドは、読取りバイト数に設定されます。 - 例外:
IOException
- 入出力エラーが発生した場合EOFException
- 入力ストリームの終わりに予期せず達した場合
-
markSupported
public boolean markSupported()この入力ストリームがmark
およびreset
メソッドをサポートしているかどうかを判定します。InflaterInputStream
のmarkSupported
メソッドはfalse
を返します。- オーバーライド:
markSupported
、クラスFilterInputStream
- 戻り値:
- このストリームの型が
mark
およびreset
メソッドをサポートしているかどうかを示すboolean
。 - 関連項目:
-
mark
public void mark(int readlimit) この入力ストリームの現在位置にマークを設定します。- オーバーライド:
mark
、クラスFilterInputStream
- 実装要件:
InflaterInputStream
のmark
メソッドは何も行いません。- パラメータ:
readlimit
- マーク位置が無効になる前に読込み可能なバイト数の上限。- 関連項目:
-
reset
public void reset() throws IOExceptionこのストリームを、この入力ストリームで最後にmark
メソッドが呼び出されたときの位置に再配置します。- オーバーライド:
reset
、クラスFilterInputStream
- 実装要件:
InflaterInputStream
クラスのreset
メソッドはIOException
をスローする以外何も行いません。- 例外:
IOException
- このメソッドが呼び出された場合。- 関連項目:
-