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

クラスZipFile

java.lang.Object
java.util.zip.ZipFile
すべての実装されたインタフェース:
Closeable, AutoCloseable
直系の既知のサブクラス:
JarFile

public class ZipFile extends Object implements Closeable
このクラスは、ZIPファイルからエントリを読み込むために使用します。

ほかで指定がない場合、null引数をコンストラクタまたはこのクラスのメソッドへ渡すと、NullPointerExceptionがスローされます。

APIのノート:
このZipFileによって使用されるリソースを解放するには、close()メソッドを明示的にまたはtry-with-resourcesによって呼び出す必要があります。 サブクラスは、サブクラスによって獲得されたリソースのクリーンアップを担当します。 クリーンアップを実行するためにObject.finalize()をオーバーライドするサブクラスは、Cleanerなどの代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalizeメソッドを削除するように変更する必要があります。
導入されたバージョン:
1.1
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    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)ヘッダー・バージョン。
    static final int
    ZIPファイルを開いて、削除のマークを付けるモード・フラグです。
    static final int
    ZIPファイルを読込み用に開くモード・フラグです。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    ZipFile(File file)
    Fileオブジェクトに指定されたZIPファイルを、読込み用に開きます。
    ZipFile(File file, int mode)
    指定されたモードで指定のFileオブジェクトから読み込む新しいZipFileを開きます。
    ZipFile(File file, int mode, Charset charset)
    指定されたモードで指定のFileオブジェクトから読み込む新しいZipFileを開きます。
    ZipFile(File file, Charset charset)
    Fileオブジェクトに指定されたZIPファイルを、読込み用に開きます。
    zipファイルを読込み用に開きます。
    ZipFile(String name, Charset charset)
    zipファイルを読込み用に開きます。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    ZIPファイルを閉じます。
    ZIPファイル・エントリの列挙を返します。
    zipファイル・コメントを返します。コメントがない場合はnullを返します。
    指定された名前のZIPファイル・エントリを返します。見つからない場合は、nullを返します。
    指定されたZIPファイル・エントリの内容を読み込む入力ストリームを返します。
    ZIPファイルのパス名を返します。
    int
    ZIPファイル中のエントリの数を返します。
    Stream<? extends ZipEntry>
    ZIPファイル・エントリ上に順序付けされたStreamを返します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • フィールド詳細

    • OPEN_READ

      public static final int OPEN_READ
      ZIPファイルを読込み用に開くモード・フラグです。
      関連項目:
    • OPEN_DELETE

      public static final int OPEN_DELETE
      ZIPファイルを開いて、削除のマークを付けるモード・フラグです。 ファイルを開いてから閉じるまでにファイルが削除されますが、closeメソッドが呼び出されるか、仮想マシンが終了するまで、ZipFileオブジェクトによってファイルの内容にアクセスできます。
      関連項目:
    • 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ファイルのコメント長フィールド・オフセットの終わり。
      関連項目:
  • コンストラクタの詳細

    • ZipFile

      public ZipFile(String name) throws IOException
      zipファイルを読込み用に開きます。

      セキュリティ・マネージャが存在する場合は、まず、セキュリティ・マネージャのcheckReadメソッドが引数としてnameを指定して呼び出され、読込みが許可されるかどうかを確認します。

      UTF-8 charsetを使用して、エントリ名とコメントがデコードされます。

      パラメータ:
      name - ZIPファイルの名前
      例外:
      ZipException - ZIP形式エラーが発生した場合
      IOException - 入出力エラーが発生した場合
      SecurityException - セキュリティ・マネージャが存在する場合に、セキュリティ・マネージャのcheckReadメソッドがファイルへの読込みアクセスを許可しないとき。
      関連項目:
    • ZipFile

      public ZipFile(File file, int mode) throws IOException
      指定されたモードで指定のFileオブジェクトから読み込む新しいZipFileを開きます。 モード引数は、OPEN_READまたはOPEN_READ|OPEN_DELETEである必要があります。

      セキュリティ・マネージャが存在する場合は、まず、セキュリティ・マネージャのcheckReadメソッドが引数としてnameを指定して呼び出され、読込みが許可されるかどうかを確認します。

      UTF-8 charsetを使用して、エントリ名とコメントがデコードされます

      パラメータ:
      file - 読取りのために開くZIPファイル
      mode - ファイルが開かれるモード
      例外:
      ZipException - ZIP形式エラーが発生した場合
      IOException - 入出力エラーが発生した場合
      SecurityException - セキュリティ・マネージャが存在し、そのcheckReadメソッドがファイルへの読取りアクセスを許可しないか、OPEN_DELETEフラグが設定されていて、そのcheckDeleteメソッドがファイルの削除を許可しない場合。
      IllegalArgumentException - mode引数が無効な場合
      導入されたバージョン:
      1.3
      関連項目:
    • ZipFile

      public ZipFile(File file) throws ZipException, IOException
      Fileオブジェクトに指定されたZIPファイルを、読込み用に開きます。

      UTF-8 charsetを使用して、エントリ名とコメントがデコードされます。

      パラメータ:
      file - 読取りのために開くZIPファイル
      例外:
      ZipException - ZIP形式エラーが発生した場合
      IOException - 入出力エラーが発生した場合
    • ZipFile

      public ZipFile(File file, int mode, Charset charset) throws IOException
      指定されたモードで指定のFileオブジェクトから読み込む新しいZipFileを開きます。 モード引数は、OPEN_READまたはOPEN_READ|OPEN_DELETEである必要があります。

      セキュリティ・マネージャが存在する場合は、まず、セキュリティ・マネージャのcheckReadメソッドが引数としてnameを指定して呼び出され、読込みが許可されるかどうかを確認します。

      パラメータ:
      file - 読取りのために開くZIPファイル
      mode - ファイルが開かれるモード
      charset - UTF-8エンコーディング(エントリの汎用フラグによって示される)によってエンコードされていないZIPエントリ名とコメントのデコードに使用される文字セット
      例外:
      ZipException - ZIP形式エラーが発生した場合
      IOException - 入出力エラーが発生した場合
      SecurityException - セキュリティ・マネージャが存在し、そのcheckReadメソッドがファイルへの読取りアクセスを許可しないか、OPEN_DELETEフラグが設定されていて、そのcheckDeleteメソッドがファイルの削除を許可しない場合
      IllegalArgumentException - mode引数が無効な場合
      導入されたバージョン:
      1.7
      関連項目:
    • ZipFile

      public ZipFile(String name, Charset charset) throws IOException
      zipファイルを読込み用に開きます。

      セキュリティ・マネージャが存在する場合は、まず、セキュリティ・マネージャのcheckReadメソッドが引数としてnameを指定して呼び出され、読込みが許可されるかどうかを確認します。

      パラメータ:
      name - ZIPファイルの名前
      charset - UTF-8エンコーディング(エントリの汎用フラグによって示される)によってエンコードされていないZIPエントリ名とコメントのデコードに使用される文字セット
      例外:
      ZipException - ZIP形式エラーが発生した場合
      IOException - 入出力エラーが発生した場合
      SecurityException - セキュリティ・マネージャが存在する場合に、セキュリティ・マネージャのcheckReadメソッドがファイルへの読込みアクセスを許可しない場合
      導入されたバージョン:
      1.7
      関連項目:
    • ZipFile

      public ZipFile(File file, Charset charset) throws IOException
      Fileオブジェクトに指定されたZIPファイルを、読込み用に開きます。
      パラメータ:
      file - 読取りのために開くZIPファイル
      charset - ZIPエントリ名とコメントのデコードに使用される文字セット (ZIPエントリの汎用ビット・フラグの言語エンコーディング・ビットが設定されている場合無視される)。
      例外:
      ZipException - ZIP形式エラーが発生した場合
      IOException - 入出力エラーが発生した場合
      導入されたバージョン:
      1.7
  • メソッドの詳細

    • getComment

      public String getComment()
      zipファイル・コメントを返します。コメントがない場合はnullを返します。
      戻り値:
      zipファイルのコメント文字列。コメント文字列がない場合は、null
      例外:
      IllegalStateException - ZIPファイルが閉じられている場合
      導入されたバージョン:
      1.7
    • getEntry

      public ZipEntry getEntry(String name)
      指定された名前のZIPファイル・エントリを返します。見つからない場合は、nullを返します。
      パラメータ:
      name - エントリの名前
      戻り値:
      ZIPファイル・エントリ。見つからない場合はnull
      例外:
      IllegalStateException - ZIPファイルが閉じられている場合
    • getInputStream

      public InputStream getInputStream(ZipEntry entry) throws IOException
      指定されたZIPファイル・エントリの内容を読み込む入力ストリームを返します。

      このZIPファイルを閉じると、このメソッドの呼出しにより返されたすべての入力ストリームが閉じられます。

      パラメータ:
      entry - ZIPファイル・エントリ
      戻り値:
      指定されたZIPファイル・エントリの内容を読み込む入力ストリーム。
      例外:
      ZipException - ZIP形式エラーが発生した場合
      IOException - 入出力エラーが発生した場合
      IllegalStateException - ZIPファイルが閉じられている場合
    • getName

      public String getName()
      ZIPファイルのパス名を返します。
      戻り値:
      ZIPファイルのパス名
    • entries

      public Enumeration<? extends ZipEntry> entries()
      ZIPファイル・エントリの列挙を返します。
      戻り値:
      ZIPファイル・エントリの列挙
      例外:
      IllegalStateException - ZIPファイルが閉じられている場合
    • stream

      public Stream<? extends ZipEntry> stream()
      ZIPファイル・エントリ上に順序付けされたStreamを返します。 エントリは、ZIPファイルの中央のディレクトリに存在する順番でStreamに存在します。
      戻り値:
      このZIPファイル内のエントリの順序付けされたStream
      例外:
      IllegalStateException - ZIPファイルが閉じられている場合
      導入されたバージョン:
      1.8
    • size

      public int size()
      ZIPファイル中のエントリの数を返します。
      戻り値:
      ZIPファイル中のエントリの数
      例外:
      IllegalStateException - ZIPファイルが閉じられている場合
    • close

      public void close() throws IOException
      ZIPファイルを閉じます。

      このZIPファイルを閉じると、getInputStreamメソッドの呼出しにより以前に返されたすべての入力ストリームが閉じられます。

      定義:
      close、インタフェース: AutoCloseable
      定義:
      close、インタフェース: Closeable
      例外:
      IOException - 入出力エラーが発生した場合