java.lang.Object
java.io.InputStream
java.io.FilterInputStream
java.util.zip.InflaterInputStream
java.util.zip.ZipInputStream
java.util.jar.JarInputStream
- すべての実装されたインタフェース:
Closeable
,AutoCloseable
public class JarInputStream extends ZipInputStream
JarInputStream
クラスは、任意の入力ストリームからJARファイルの内容を読み取るために使います。 これは、java.util.zip.ZipInputStream
クラスを拡張し、オプションのManifest
エントリの読取りをサポートします。 Manifest
エントリは、JARファイルとそのエントリのメタ情報を格納するために使います。 - 導入されたバージョン:
- 1.2
- 関連項目:
-
フィールドのサマリー
フィールド修飾子と型フィールド説明static final int
中央ディレクトリの(CEN)ヘッダー内部ファイル属性のフィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダー外部ファイル属性フィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダー・コメント長フィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダー非圧縮ファイルのcrc-32値フィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダー・ディスク番号の開始フィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダーの追加フィールド長フィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダー暗号化、復号化フラグのフィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダー・サイズ(バイト単位、(シグネチャを含む))。static final int
中央ディレクトリの(CEN)ヘッダー圧縮メソッドのフィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダーの非圧縮サイズ・フィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダーのファイル名の長さフィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダーLOCヘッダーのオフセット・フィールドのオフセット。static final long
中央ディレクトリの(CEN)ヘッダー・シグネチャ。static final int
中央ディレクトリの(CEN)ヘッダー圧縮サイズ・フィールド・オフセット。static final int
中央ディレクトリの(CEN)ヘッダー変更時間フィールド・オフセット。static final int
フィールド・オフセットによって作成される中央ディレクトリ(CEN)ヘッダー・バージョン。static final int
フィールド・オフセットの抽出に必要な中央ディレクトリ(CEN)ヘッダー・バージョン。static final int
中央ディレクトリの(END)ヘッダーzipファイルのコメント長フィールド・オフセットの終わり。static final int
中央ディレクトリの(END)ヘッダー・サイズの終了(バイト単位、(シグネチャを含む))。static final int
最初のCENヘッダー・フィールドのオフセットに対する中央ディレクトリ(END)ヘッダー・オフセットの終了。static final long
中央ディレクトリの(END)ヘッダー・シグネチャの終了。static final int
中央ディレクトリの(END)ヘッダー中央ディレクトリ・サイズ(バイト単位)フィールド・オフセットの終了。static final int
このディスク・フィールド・オフセット上のエントリの中央ディレクトリ(END)ヘッダー番号の終わり。static final int
中央ディレクトリの(END)ヘッダーの入力フィールド・オフセットの合計数。static final int
圧縮されていない余分なローカル(EXT)ヘッダーのcrc-32値フィールド・オフセット。static final int
追加のローカル(EXT)ヘッダー・サイズ(バイト数(シグネチャを含む))。static final int
余分なローカル(EXT)ヘッダーの非圧縮サイズ・フィールド・オフセット。static final long
追加のローカル(EXT)ヘッダー・シグネチャ。static final int
追加のローカル(EXT)ヘッダー圧縮サイズ・フィールド・オフセット。static final int
ローカル・ファイル(LOC)ヘッダー非圧縮ファイルcrc-32値フィールド・オフセット。static final int
ローカル・ファイル(LOC)ヘッダーの追加フィールド長フィールド・オフセット。static final int
ローカル・ファイル(LOC)ヘッダー汎用ビット・フラグ・フィールド・オフセット。static final int
ローカル・ファイルの(LOC)ヘッダー・サイズ(バイト単位、(シグネチャを含む))。static final int
ローカル・ファイル(LOC)ヘッダー圧縮メソッドのフィールド・オフセット。static final int
ローカル・ファイル(LOC)ヘッダーの非圧縮サイズ・フィールド・オフセット。static final int
ローカル・ファイル(LOC)ヘッダーのファイル名の長さフィールド・オフセット。static final long
ローカル・ファイル(LOC)ヘッダーのシグネチャ。static final int
ローカル・ファイルの(LOC)ヘッダー圧縮サイズ・フィールドのオフセット。static final int
ローカル・ファイル(LOC)ヘッダー変更時間フィールド・オフセット。static final int
フィールド・オフセットの抽出に必要なローカル・ファイル(LOC)ヘッダー・バージョン。クラス java.util.zip.InflaterInputStreamで宣言されたフィールド
buf, inf, len
クラス java.io.FilterInputStreamで宣言されたフィールド
in
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明新しいJarInputStream
を作成して、オプションのマニフェストを読み込みます。JarInputStream
(InputStream in, boolean verify) 新しいJarInputStream
を作成して、オプションのマニフェストを読み込みます。 -
メソッドのサマリー
修飾子と型メソッド説明protected ZipEntry
createZipEntry
(String name) 指定されたJARファイルのエントリ名に新しいJarEntry
(ZipEntry
)を作成します。このJARファイルのManifest
を返します。マニフェストがない場合はnull
を返します。次のZIPファイル・エントリを読み取って、エントリ・データの先頭にストリームを配置します。次のJARファイル・エントリを読み取って、エントリ・データの先頭にストリームを位置付けます。int
read
(byte[] b, int off, int len) 現在のJARファイル・エントリからバイトの配列に読み込みます。クラス java.util.zip.ZipInputStreamで宣言されたメソッド
available, close, closeEntry, skip
クラス java.util.zip.InflaterInputStreamで宣言されたメソッド
fill, mark, markSupported, read, reset
クラス java.io.FilterInputStreamで宣言されたメソッド
read
クラス java.io.InputStreamで宣言されたメソッド
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
フィールド詳細
-
LOCSIG
static final long LOCSIGローカル・ファイル(LOC)ヘッダーのシグネチャ。- 関連項目:
-
EXTSIG
static final long EXTSIG追加のローカル(EXT)ヘッダー・シグネチャ。- 関連項目:
-
CENSIG
static final long CENSIG中央ディレクトリの(CEN)ヘッダー・シグネチャ。- 関連項目:
-
ENDSIG
static final long ENDSIG中央ディレクトリの(END)ヘッダー・シグネチャの終了。- 関連項目:
-
LOCHDR
static final int LOCHDRローカル・ファイルの(LOC)ヘッダー・サイズ(バイト単位、(シグネチャを含む))。- 関連項目:
-
EXTHDR
static final int EXTHDR追加のローカル(EXT)ヘッダー・サイズ(バイト数(シグネチャを含む))。- 関連項目:
-
CENHDR
static final int CENHDR中央ディレクトリの(CEN)ヘッダー・サイズ(バイト単位、(シグネチャを含む))。- 関連項目:
-
ENDHDR
static final int ENDHDR中央ディレクトリの(END)ヘッダー・サイズの終了(バイト単位、(シグネチャを含む))。- 関連項目:
-
LOCVER
static final int LOCVERフィールド・オフセットの抽出に必要なローカル・ファイル(LOC)ヘッダー・バージョン。- 関連項目:
-
LOCFLG
static final int LOCFLGローカル・ファイル(LOC)ヘッダー汎用ビット・フラグ・フィールド・オフセット。- 関連項目:
-
LOCHOW
static final int LOCHOWローカル・ファイル(LOC)ヘッダー圧縮メソッドのフィールド・オフセット。- 関連項目:
-
LOCTIM
static final int LOCTIMローカル・ファイル(LOC)ヘッダー変更時間フィールド・オフセット。- 関連項目:
-
LOCCRC
static final int LOCCRCローカル・ファイル(LOC)ヘッダー非圧縮ファイルcrc-32値フィールド・オフセット。- 関連項目:
-
LOCSIZ
static final int LOCSIZローカル・ファイルの(LOC)ヘッダー圧縮サイズ・フィールドのオフセット。- 関連項目:
-
LOCLEN
static final int LOCLENローカル・ファイル(LOC)ヘッダーの非圧縮サイズ・フィールド・オフセット。- 関連項目:
-
LOCNAM
static final int LOCNAMローカル・ファイル(LOC)ヘッダーのファイル名の長さフィールド・オフセット。- 関連項目:
-
LOCEXT
static final int LOCEXTローカル・ファイル(LOC)ヘッダーの追加フィールド長フィールド・オフセット。- 関連項目:
-
EXTCRC
static final int EXTCRC圧縮されていない余分なローカル(EXT)ヘッダーのcrc-32値フィールド・オフセット。- 関連項目:
-
EXTSIZ
static final int EXTSIZ追加のローカル(EXT)ヘッダー圧縮サイズ・フィールド・オフセット。- 関連項目:
-
EXTLEN
static final int EXTLEN余分なローカル(EXT)ヘッダーの非圧縮サイズ・フィールド・オフセット。- 関連項目:
-
CENVEM
static final int CENVEMフィールド・オフセットによって作成される中央ディレクトリ(CEN)ヘッダー・バージョン。- 関連項目:
-
CENVER
static final int CENVERフィールド・オフセットの抽出に必要な中央ディレクトリ(CEN)ヘッダー・バージョン。- 関連項目:
-
CENFLG
static final int CENFLG中央ディレクトリの(CEN)ヘッダー暗号化、復号化フラグのフィールド・オフセット。- 関連項目:
-
CENHOW
static final int CENHOW中央ディレクトリの(CEN)ヘッダー圧縮メソッドのフィールド・オフセット。- 関連項目:
-
CENTIM
static final int CENTIM中央ディレクトリの(CEN)ヘッダー変更時間フィールド・オフセット。- 関連項目:
-
CENCRC
static final int CENCRC中央ディレクトリの(CEN)ヘッダー非圧縮ファイルのcrc-32値フィールド・オフセット。- 関連項目:
-
CENSIZ
static final int CENSIZ中央ディレクトリの(CEN)ヘッダー圧縮サイズ・フィールド・オフセット。- 関連項目:
-
CENLEN
static final int CENLEN中央ディレクトリの(CEN)ヘッダーの非圧縮サイズ・フィールド・オフセット。- 関連項目:
-
CENNAM
static final int CENNAM中央ディレクトリの(CEN)ヘッダーのファイル名の長さフィールド・オフセット。- 関連項目:
-
CENEXT
static final int CENEXT中央ディレクトリの(CEN)ヘッダーの追加フィールド長フィールド・オフセット。- 関連項目:
-
CENCOM
static final int CENCOM中央ディレクトリの(CEN)ヘッダー・コメント長フィールド・オフセット。- 関連項目:
-
CENDSK
static final int CENDSK中央ディレクトリの(CEN)ヘッダー・ディスク番号の開始フィールド・オフセット。- 関連項目:
-
CENATT
static final int CENATT中央ディレクトリの(CEN)ヘッダー内部ファイル属性のフィールド・オフセット。- 関連項目:
-
CENATX
static final int CENATX中央ディレクトリの(CEN)ヘッダー外部ファイル属性フィールド・オフセット。- 関連項目:
-
CENOFF
static final int CENOFF中央ディレクトリの(CEN)ヘッダーLOCヘッダーのオフセット・フィールドのオフセット。- 関連項目:
-
ENDSUB
static final int ENDSUBこのディスク・フィールド・オフセット上のエントリの中央ディレクトリ(END)ヘッダー番号の終わり。- 関連項目:
-
ENDTOT
static final int ENDTOT中央ディレクトリの(END)ヘッダーの入力フィールド・オフセットの合計数。- 関連項目:
-
ENDSIZ
static final int ENDSIZ中央ディレクトリの(END)ヘッダー中央ディレクトリ・サイズ(バイト単位)フィールド・オフセットの終了。- 関連項目:
-
ENDOFF
static final int ENDOFF最初のCENヘッダー・フィールドのオフセットに対する中央ディレクトリ(END)ヘッダー・オフセットの終了。- 関連項目:
-
ENDCOM
static final int ENDCOM中央ディレクトリの(END)ヘッダーzipファイルのコメント長フィールド・オフセットの終わり。- 関連項目:
-
-
コンストラクタの詳細
-
JarInputStream
public JarInputStream(InputStream in) throws IOException 新しいJarInputStream
を作成して、オプションのマニフェストを読み込みます。 マニフェストがあり、JarInputStreamが署名されている場合には、署名を確認します。- パラメータ:
in
- 実際の入力ストリーム- 例外:
IOException
- 入出力エラーが発生した場合
-
JarInputStream
public JarInputStream(InputStream in, boolean verify) throws IOException 新しいJarInputStream
を作成して、オプションのマニフェストを読み込みます。 マニフェストがあり、verifyがtrueで、JarInputStreamが署名されている場合には、署名を確認します。- パラメータ:
in
- 実際の入力ストリームverify
- JarInputStreamが署名されていることを確認するかどうか。- 例外:
IOException
- 入出力エラーが発生した場合
-
-
メソッドの詳細
-
getManifest
public Manifest getManifest()このJARファイルのManifest
を返します。マニフェストがない場合はnull
を返します。- 戻り値:
- このJARファイルの
Manifest
、マニフェストがない場合はnull
。
-
getNextEntry
public ZipEntry getNextEntry() throws IOException次のZIPファイル・エントリを読み取って、エントリ・データの先頭にストリームを配置します。 確認が有効になっている場合は、次のエントリのストリーム配置の結果が例外になる間に任意の不正な署名が検出されます。- オーバーライド:
getNextEntry
、クラスZipInputStream
- 戻り値:
- 次のZIPファイル・エントリ。エントリがこれ以上存在しない場合はnull
- 例外:
ZipException
- ZIPファイル・エラーが発生した場合IOException
- 入出力エラーが発生した場合SecurityException
- jarファイル・エントリが誤って署名された場合。
-
getNextJarEntry
public JarEntry getNextJarEntry() throws IOException次のJARファイル・エントリを読み取って、エントリ・データの先頭にストリームを位置付けます。 確認が有効になっている場合は、次のエントリのストリーム配置の結果が例外になる間に任意の不正な署名が検出されます。- 戻り値:
- 次のJARファイル・エントリ。エントリがこれ以上存在しない場合はnull
- 例外:
ZipException
- ZIPファイル・エラーが発生した場合IOException
- 入出力エラーが発生した場合SecurityException
- jarファイル・エントリが誤って署名された場合。
-
read
public int read(byte[] b, int off, int len) throws IOException 現在のJARファイル・エントリからバイトの配列に読み込みます。len
が0でない場合、このメソッドは入力の一部が利用できるようになるまでブロックされます。それ以外の場合、バイトは読み込まれず、0
が返されます。 確認が有効になっている場合は、エントリの最後に達するまでのいずれかの時点で、現在エントリにあるすべての不正な署名が報告されます。- オーバーライド:
read
、クラスZipInputStream
- パラメータ:
b
- データの読込み先のバッファoff
- 転送先配列の開始オフセットb
len
- 読み込む最大バイト数- 戻り値:
- 実際に読み込まれたバイト数。エントリの最後に達した場合は -1
- 例外:
NullPointerException
-b
がnull
である場合。IndexOutOfBoundsException
-off
が負の値の場合、len
が負の値の場合、あるいはlen
がb.length - off
より大きい場合ZipException
- ZIPファイル・エラーが発生した場合IOException
- 入出力エラーが発生した場合SecurityException
- jarファイル・エントリが誤って署名された場合。- 関連項目:
-
createZipEntry
指定されたJARファイルのエントリ名に新しいJarEntry
(ZipEntry
)を作成します。 指定されたJARファイル・エントリ名のマニフェスト属性は、新規JarEntry
にコピーされます。- オーバーライド:
createZipEntry
、クラスZipInputStream
- パラメータ:
name
- JAR/ZIPファイル・エントリの名前- 戻り値:
- 作成された
JarEntry
オブジェクト
-