java.util.zip

Class ZipFile

  • All Implemented Interfaces:
    Closeable, AutoCloseable
    Direct Known Subclasses:
    JarFile

    public class ZipFile
    extends Object
    implements Closeable
    This class is used to read entries from a zip file.

    Unless otherwise noted, passing a null argument to a constructor or method in this class will cause a NullPointerException to be thrown.

    • Constructor Detail
      • ZipFile
        public ZipFile(String name)
                throws IOException
        Opens a zip file for reading.

        First, if there is a security manager, its checkRead method is called with the name argument as its argument to ensure the read is allowed.

        The UTF-8 charset is used to decode the entry names and comments.

        Parameters:
        name - the name of the zip file
        Throws:
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
        SecurityException - if a security manager exists and its checkRead method doesn't allow read access to the file.
        See Also:
        SecurityManager.checkRead(java.lang.String)
      • ZipFile
        public ZipFile(File file,
               int mode)
                throws IOException
        Opens a new ZipFile to read from the specified File object in the specified mode. The mode argument must be either OPEN_READ or OPEN_READ | OPEN_DELETE.

        First, if there is a security manager, its checkRead method is called with the name argument as its argument to ensure the read is allowed.

        The UTF-8 charset is used to decode the entry names and comments

        Parameters:
        file - the ZIP file to be opened for reading
        mode - the mode in which the file is to be opened
        Throws:
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
        SecurityException - if a security manager exists and its checkRead method doesn't allow read access to the file, or its checkDelete method doesn't allow deleting the file when the OPEN_DELETE flag is set.
        IllegalArgumentException - if the mode argument is invalid
        Since:
        1.3
        See Also:
        SecurityManager.checkRead(java.lang.String)
      • ZipFile
        public ZipFile(File file)
                throws ZipException,
                       IOException
        Opens a ZIP file for reading given the specified File object.

        The UTF-8 charset is used to decode the entry names and comments.

        Parameters:
        file - the ZIP file to be opened for reading
        Throws:
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
      • ZipFile
        public ZipFile(File file,
               int mode,
               Charset charset)
                throws IOException
        Opens a new ZipFile to read from the specified File object in the specified mode. The mode argument must be either OPEN_READ or OPEN_READ | OPEN_DELETE.

        First, if there is a security manager, its checkRead method is called with the name argument as its argument to ensure the read is allowed.

        Parameters:
        file - the ZIP file to be opened for reading
        mode - the mode in which the file is to be opened
        charset - the charset to be used to decode the ZIP entry name and comment that are not encoded by using UTF-8 encoding (indicated by entry's general purpose flag).
        Throws:
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
        SecurityException - if a security manager exists and its checkRead method doesn't allow read access to the file,or its checkDelete method doesn't allow deleting the file when the OPEN_DELETE flag is set
        IllegalArgumentException - if the mode argument is invalid
        Since:
        1.7
        See Also:
        SecurityManager.checkRead(java.lang.String)
      • ZipFile
        public ZipFile(String name,
               Charset charset)
                throws IOException
        Opens a zip file for reading.

        First, if there is a security manager, its checkRead method is called with the name argument as its argument to ensure the read is allowed.

        Parameters:
        name - the name of the zip file
        charset - the charset to be used to decode the ZIP entry name and comment that are not encoded by using UTF-8 encoding (indicated by entry's general purpose flag).
        Throws:
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
        SecurityException - if a security manager exists and its checkRead method doesn't allow read access to the file
        Since:
        1.7
        See Also:
        SecurityManager.checkRead(java.lang.String)
      • ZipFile
        public ZipFile(File file,
               Charset charset)
                throws IOException
        Opens a ZIP file for reading given the specified File object.
        Parameters:
        file - the ZIP file to be opened for reading
        charset - The charset to be used to decode the ZIP entry name and comment (ignored if the language encoding bit of the ZIP entry's general purpose bit flag is set).
        Throws:
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
        Since:
        1.7
    • Method Detail
      • getComment
        public String getComment()
        Returns the zip file comment, or null if none.
        Returns:
        the comment string for the zip file, or null if none
        Throws:
        IllegalStateException - if the zip file has been closed Since 1.7
      • getEntry
        public ZipEntry getEntry(String name)
        Returns the zip file entry for the specified name, or null if not found.
        Parameters:
        name - the name of the entry
        Returns:
        the zip file entry, or null if not found
        Throws:
        IllegalStateException - if the zip file has been closed
      • getInputStream
        public InputStream getInputStream(ZipEntry entry)
                                   throws IOException
        Returns an input stream for reading the contents of the specified zip file entry.

        Closing this ZIP file will, in turn, close all input streams that have been returned by invocations of this method.

        Parameters:
        entry - the zip file entry
        Returns:
        the input stream for reading the contents of the specified zip file entry.
        Throws:
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
        IllegalStateException - if the zip file has been closed
      • getName
        public String getName()
        Returns the path name of the ZIP file.
        Returns:
        the path name of the ZIP file
      • entries
        public Enumeration<? extends ZipEntry> entries()
        Returns an enumeration of the ZIP file entries.
        Returns:
        an enumeration of the ZIP file entries
        Throws:
        IllegalStateException - if the zip file has been closed
      • size
        public int size()
        Returns the number of entries in the ZIP file.
        Returns:
        the number of entries in the ZIP file
        Throws:
        IllegalStateException - if the zip file has been closed
      • finalize
        protected void finalize()
                         throws IOException
        Ensures that the system resources held by this ZipFile object are released when there are no more references to it.

        Since the time when GC would invoke this method is undetermined, it is strongly recommended that applications invoke the close method as soon they have finished accessing this ZipFile. This will prevent holding up system resources for an undetermined length of time.

        Overrides:
        finalize in class Object
        Throws:
        IOException - if an I/O error has occurred
        See Also:
        close()

Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-java/util/zip/ZipFile.html

The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.

References

  1. View the html document Language of the document:fr Manuel PHP : https://docs.oracle.com

These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.

Contents Haut