Module  java.base
软件包  java.util.zip

Class ZipEntry

  • All Implemented Interfaces:
    Cloneable
    已知直接子类:
    JarEntry


    public class ZipEntry
    extends Object
    implements Cloneable
    此类用于表示ZIP文件条目。
    从以下版本开始:
    1.1
    • 构造方法详细信息

      • ZipEntry

        public ZipEntry​(ZipEntry e)
        创建一个新的zip条目,其中的字段从指定的zip条目中取出。
        参数
        e - 一个zip条目对象
        异常
        NullPointerException - 如果条目对象为空
    • 方法详细信息

      • getName

        public String getName​()
        返回条目的名称。
        结果
        条目的名称
      • setTime

        public void setTime​(long time)
        设置条目的最后修改时间。

        如果条目输出到ZIP文件或ZIP文件格式化的输出流,则此方法设置的最后修改时间将被存储到zip文件条目的date and time fields中,并以标准MS-DOS date and time format编码。 default TimeZone用于将时代时间转换为MS-DOS数据和时间。

        参数
        time - 自纪元以来,输入的最后修改时间(以毫秒为单位)
        另请参见:
        getTime()getLastModifiedTime()
      • getTime

        public long getTime​()
        返回条目的最后修改时间。

        如果从ZIP文件或ZIP文件格式化的输入流中读取该条目,则这是从zip文件条目的date and time fields的最后修改时间。 default TimeZone用于将标准MS-DOS格式的日期和时间转换为时代。

        结果
        最后修改时间(以毫秒为单位),或-1(如果未指定)
        另请参见:
        setTime(long)setLastModifiedTime(FileTime)
      • setTimeLocal

        public void setTimeLocal​(LocalDateTime time)
        设置本地日期时间的条目的最后修改时间。

        如果条目输出到ZIP文件或ZIP文件格式化的输出流,则此方法设置的最后修改时间将存储在zip文件条目的date and time fields中,并以标准MS-DOS date and time format编码。 如果日期时间设置超出标准MS-DOS date and time format的范围,则时间也将存储在UTC时间的optional extra data zip文件条目的扩展时间戳记字段中。 system default TimeZone用于将本地日期时间转换为UTC时间。

        LocalDateTime使用毫微秒的精度,而这个类使用毫秒的精度。 转换将截断任何超量精度信息,就好像以毫秒为单位的整数除以一百万。

        参数
        time - 本地日期时间的最后修改时间
        从以下版本开始:
        9
        另请参见:
        getTimeLocal()
      • getTimeLocal

        public LocalDateTime getTimeLocal​()
        返回本地日期时间的条目的最后修改时间。

        如果条目是从ZIP文件或ZIP文件格式的输入流中optional extra data则如果扩展时间戳字段存在,则是zip文件条目的optional extra data的最后修改时间。 否则,最后修改时间从条目的标准MS-DOS格式化的date and time fields

        system default TimeZone用于将UTC时间转换为本地日期时间。

        结果
        在本地日期时间输入的最后修改时间
        从以下版本开始:
        9
        另请参见:
        setTimeLocal(LocalDateTime)
      • setLastModifiedTime

        public ZipEntry setLastModifiedTime​(FileTime time)
        设置条目的最后修改时间。

        当输出到ZIP文件或ZIP文件格式化的输出流时,此方法设置的最后修改时间将被存储到date and time fields中的zip文件条目的standard MS-DOS date and time format )以及UTC时间的optional extra data中的扩展时间戳记字段。

        参数
        time - 条目的最后修改时间
        结果
        这个zip条目
        异常
        NullPointerException - 如果 time为空
        从以下版本开始:
        1.8
        另请参见:
        getLastModifiedTime()
      • getLastModifiedTime

        public FileTime getLastModifiedTime​()
        返回条目的最后修改时间。

        如果从ZIP文件或ZIP文件格式化的输入流中读取条目,则如果扩展时间戳字段存在,则是zip文件条目optional extra data的最后修改时间。 否则,最后修改时间是从条目date and time fields读取的, default TimeZone用于将标准MS-DOS格式的日期和时间转换为时代。

        结果
        条目的最后修改时间,如果未指定,则为null
        从以下版本开始:
        1.8
        另请参见:
        setLastModifiedTime(FileTime)
      • setLastAccessTime

        public ZipEntry setLastAccessTime​(FileTime time)
        设置条目的最后访问时间。

        如果设置,最后访问时间将被存储到条目optional extra data的扩展时间戳字段中,当输出到ZIP文件或ZIP文件格式化的流时。

        参数
        time - 条目的最后访问时间
        结果
        这个zip条目
        异常
        NullPointerException - 如果 time为空
        从以下版本开始:
        1.8
        另请参见:
        getLastAccessTime()
      • getLastAccessTime

        public FileTime getLastAccessTime​()
        返回条目的最后访问时间。

        最后一次访问时间来自条目optional extra data的扩展时间戳记字段,从ZIP文件或ZIP文件格式化的流中读取。

        结果
        条目的最后访问时间,如果未指定则为null
        从以下版本开始:
        1.8
        另请参见:
        setLastAccessTime(FileTime)
      • setCreationTime

        public ZipEntry setCreationTime​(FileTime time)
        设置条目的创建时间。

        如果设置,创建时间将被存储到条目optional extra data的扩展时间戳字段中,当输出到ZIP文件或ZIP文件格式化的流时。

        参数
        time - 条目的创建时间
        结果
        这个zip条目
        异常
        NullPointerException - 如果 time为空
        从以下版本开始:
        1.8
        另请参见:
        getCreationTime()
      • getCreationTime

        public FileTime getCreationTime​()
        返回条目的创建时间。

        创建时间来自条目optional extra data的扩展时间戳字段,从ZIP文件或ZIP文件格式化的流中读取。

        结果
        条目的创建时间,如果未指定则为null
        从以下版本开始:
        1.8
        另请参见:
        setCreationTime(FileTime)
      • setSize

        public void setSize​(long size)
        设置条目数据的未压缩大小。
        参数
        size - 未压缩大小(以字节为单位)
        异常
        IllegalArgumentException - 如果指定的大小小于0,则当不支持 ZIP64 format时大于0xFFFFFFFF,或者在支持 ZIP64时小于0
        另请参见:
        getSize()
      • getSize

        public long getSize​()
        返回条目数据的未压缩大小。
        结果
        条目数据的未压缩大小,如果不知道则为-1
        另请参见:
        setSize(long)
      • getCompressedSize

        public long getCompressedSize​()
        返回压缩条目数据的大小。

        在存储条目的情况下,压缩大小将与条目的未压缩大小相同。

        结果
        压缩条目数据的大小,如果不知道则为-1
        另请参见:
        setCompressedSize(long)
      • setCompressedSize

        public void setCompressedSize​(long csize)
        设置压缩条目数据的大小。
        参数
        csize - 要设置的压缩大小
        另请参见:
        getCompressedSize()
      • setCrc

        public void setCrc​(long crc)
        设置未压缩条目数据的CRC-32校验和。
        参数
        crc - CRC-32值
        异常
        IllegalArgumentException - 如果指定的CRC-32值小于0或大于0xFFFFFFFF
        另请参见:
        getCrc()
      • getCrc

        public long getCrc​()
        返回未压缩条目数据的CRC-32校验和。
        结果
        未压缩条目数据的CRC-32校验和,如果不知道则为-1
        另请参见:
        setCrc(long)
      • setMethod

        public void setMethod​(int method)
        设置条目的压缩方法。
        参数
        method - 压缩方法,可以是STORED还是DEFLATED
        异常
        IllegalArgumentException - 如果指定的压缩方法无效
        另请参见:
        getMethod()
      • getMethod

        public int getMethod​()
        返回条目的压缩方法。
        结果
        条目的压缩方法,如果未指定,则为-1
        另请参见:
        setMethod(int)
      • setExtra

        public void setExtra​(byte[] extra)
        为条目设置可选的额外字段数据。

        调用此方法可能会改变这种条目的最后修改时间,最后访问时间和创建时间,如果extra场数据包括可延展的时间戳字段,例如NTFS tag 0x0001Info-ZIP Extended Timestamp ,如在指定Info-ZIP Application Note 970311

        参数
        extra - 额外的字段数据字节
        异常
        IllegalArgumentException - 如果指定的额外字段数据的长度大于0xFFFF个字节
        另请参见:
        getExtra()
      • getExtra

        public byte[] getExtra​()
        返回条目的额外字段数据。
        结果
        条目的额外字段数据,如果没有则为null
        另请参见:
        setExtra(byte[])
      • setComment

        public void setComment​(String comment)
        设置条目的可选注释字符串。

        ZIP条目注释的最大长度为0xffff。 如果指定的注释字符串的长度在编码后大于0xFFFF个字节,则只有第一个0xFFFF字节输出到ZIP文件条目。

        参数
        comment - 注释字符串
        另请参见:
        getComment()
      • getComment

        public String getComment​()
        返回条目的注释字符串。
        结果
        条目的注释字符串,如果没有则为null
        另请参见:
        setComment(String)
      • isDirectory

        public boolean isDirectory​()
        如果这是目录条目,则返回true。 目录条目被定义为一个名称以'/'结尾的条目。
        结果
        如果这是目录条目,则为true
      • toString

        public String toString​()
        返回ZIP条目的字符串表示形式。
        重写:
        toStringObject
        结果
        对象的字符串表示形式。
      • clone

        public Object clone​()
        返回此条目的副本。
        重写:
        cloneObject
        结果
        这个实例的一个克隆。
        另请参见:
        Cloneable