java.util.jar
Class JarInputStream
java.lang.Object
|
+--java.io.InputStream
|
+--java.io.FilterInputStream
|
+--java.util.zip.InflaterInputStream
|
+--java.util.zip.ZipInputStream
|
+--java.util.jar.JarInputStream
- All Implemented Interfaces:
- java.util.zip.ZipConstants
- public class JarInputStream
- extends ZipInputStream
The JarInputStream
class is used to read the contents of
a JAR file from any input stream. It extends the class
java.util.zip.ZipInputStream
with support for reading
an optional Manifest
entry. The Manifest
can be used to store meta-information about the JAR file and its entries.
- Since:
- 1.2
- See Also:
Manifest
,
ZipInputStream
Fields inherited from class java.util.zip.ZipInputStream |
CENATT, CENATX, CENCOM, CENCRC, CENDSK, CENEXT, CENFLG, CENHDR, CENHOW, CENLEN, CENNAM, CENOFF, CENSIG, CENSIZ, CENTIM, CENVEM, CENVER, ENDCOM, ENDHDR, ENDOFF, ENDSIG, ENDSIZ, ENDSUB, ENDTOT, EXTCRC, EXTHDR, EXTLEN, EXTSIG, EXTSIZ, LOCCRC, LOCEXT, LOCFLG, LOCHDR, LOCHOW, LOCLEN, LOCNAM, LOCSIG, LOCSIZ, LOCTIM, LOCVER |
Method Summary |
protected ZipEntry |
createZipEntry(String name)
Creates a new JarEntry (ZipEntry ) for the
specified JAR file entry name. |
Manifest |
getManifest()
Returns the Manifest for this JAR file, or
null if none. |
ZipEntry |
getNextEntry()
Reads the next ZIP file entry and positions stream at the beginning
of the entry data. |
JarEntry |
getNextJarEntry()
Reads the next JAR file entry and positions the stream at the
beginning of the entry data. |
int |
read(byte[] b,
int off,
int len)
Reads from the current JAR file entry into an array of bytes. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JarInputStream
public JarInputStream(InputStream in)
throws IOException
- Creates a new
JarInputStream
and reads the optional
manifest. If a manifest is present, also attempts to verify
the signatures if the JarInputStream is signed.
- Parameters:
in
- the actual input stream- Throws:
IOException
- if an I/O error has occurred
JarInputStream
public JarInputStream(InputStream in,
boolean verify)
throws IOException
- Creates a new
JarInputStream
and reads the optional
manifest. If a manifest is present and verify is true, also attempts
to verify the signatures if the JarInputStream is signed.
- Parameters:
in
- the actual input streamverify
- whether or not to verify the JarInputStream if
it is signed.- Throws:
IOException
- if an I/O error has occurred
getManifest
public Manifest getManifest()
- Returns the
Manifest
for this JAR file, or
null
if none.
- Returns:
- the
Manifest
for this JAR file, or
null
if none.
getNextEntry
public ZipEntry getNextEntry()
throws IOException
- Reads the next ZIP file entry and positions stream at the beginning
of the entry data.
- Overrides:
getNextEntry
in class ZipInputStream
- Throws:
ZipException
- if a ZIP file error has occurredIOException
- if an I/O error has occurred
getNextJarEntry
public JarEntry getNextJarEntry()
throws IOException
- Reads the next JAR file entry and positions the stream at the
beginning of the entry data.
- Returns:
- the next JAR file entry
- Throws:
ZipException
- if a ZIP file error has occurredIOException
- if an I/O error has occurred
read
public int read(byte[] b,
int off,
int len)
throws IOException
- Reads from the current JAR file entry into an array of bytes.
Blocks until some input is available.
- Overrides:
read
in class ZipInputStream
- Parameters:
b
- the buffer into which the data is readoff
- the start offset of the datalen
- the maximum number of bytes to read- Returns:
- the actual number of bytes read, or -1 if the end of the
entry is reached
- Throws:
ZipException
- if a ZIP file error has occurredIOException
- if an I/O error has occurred
createZipEntry
protected ZipEntry createZipEntry(String name)
- Creates a new
JarEntry
(ZipEntry
) for the
specified JAR file entry name.
- Overrides:
createZipEntry
in class ZipInputStream
- Parameters:
name
- the name of the JAR/ZIP file entry- Returns:
- the
JarEntry
object just created
Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples. Java, Java 2D, and JDBC are trademarks or registered trademarks of Oracle and/or its affiliates, in the US and other countries.
Copyright © 1995, 2010 Oracle and/or its affiliates. All rights reserved.