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

クラスJarInputStream

  • すべての実装されたインタフェース:
    Closeable, AutoCloseable


    public class JarInputStream
    extends ZipInputStream
    JarInputStreamクラスは、任意の入力ストリームからJARファイルの内容を読み取るために使います。 これは、java.util.zip.ZipInputStreamクラスを拡張し、オプションのManifestエントリの読取りをサポートします。 Manifestエントリは、JARファイルとそのエントリのメタ情報を格納するために使います。
    導入されたバージョン:
    1.2
    関連項目:
    Manifest, ZipInputStream
    • コンストラクタの詳細

      • 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 - bnullの場合。
        IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、あるいはlenb.length - offより大きい場合
        ZipException - ZIPファイル・エラーが発生した場合
        IOException - 入出力エラーが発生した場合
        SecurityException - jarファイル・エントリが誤って署名された場合。
        関連項目:
        FilterInputStream.in
      • createZipEntry

        protected ZipEntry createZipEntry​(String name)
        指定されたJARファイルのエントリ名に新しいJarEntry (ZipEntry)を作成します。 指定されたJARファイル・エントリ名のマニフェスト属性は、新規JarEntryにコピーされます。
        オーバーライド:
        createZipEntry、クラス: ZipInputStream
        パラメータ:
        name - JAR/ZIPファイル・エントリの名前
        戻り値:
        作成されたJarEntryオブジェクト