Рубрики

Java.util.zip.ZipEntry класс в Java

Этот класс используется для представления записи в файле ZIP.
Конструкторы

  • ZipEntry (String name): создает новую запись zip с указанным именем.
  • ZipEntry (ZipEntry e): создает новую запись zip с полями, взятыми из указанной записи zip.

Методы:

  • Object clone (): возвращает копию этой записи.
    Syntax :public Object clone()
    Overrides:
    clone in class Object
    Returns:
    a clone of this instance.
  • String getComment (): возвращает строку комментария для записи или ноль, если ее нет.
    Syntax :public String getComment()
    Returns:
    the comment string for the entry, or null if none
  • long getCompressedSize (): Возвращает размер сжатых данных записи или -1, если неизвестно. В случае сохраненной записи сжатый размер будет таким же, как и несжатый размер записи.
    Syntax :public long getCompressedSize()
    Returns:
    the size of the compressed entry data, or -1 if not known
  • long getCrc (): Возвращает контрольную сумму CRC-32 для несжатых входных данных или -1, если неизвестно.
    Syntax :public long getCrc()
    Returns:
    the CRC-32 checksum of the uncompressed entry data, or -1 if not known
  • byte [] getExtra (): Возвращает дополнительные данные поля для записи или ноль, если их нет.
    Syntax :=public byte[] getExtra()
    Returns:
    the extra field data for the entry, or null if none
    
  • int getMethod (): возвращает метод сжатия записи или -1, если не указан.
    Syntax :public int getMethod()
    Returns:
    the compression method of the entry, or -1 if not specified
  • String getName (): возвращает имя записи.
    Syntax :public String getName()
    Returns:
    the name of the entry
    
  • long getSize (): возвращает несжатый размер входных данных или -1, если неизвестно.
    Syntax :public long getSize()
    Returns:
    the uncompressed size of the entry data, or -1 if not know
  • long getTime (): возвращает время модификации записи или -1, если не указано.
    Syntax :public long getTime()
    Returns:
    the modification time of the entry, or -1 if not specified
  • int hashCode (): возвращает значение хэш-кода для этой записи.
    Syntax :public int hashCode()
    Overrides:
    hashCode in class Object
    Returns:
    a hash code value for this object.
  • boolean isDirectory (): возвращает true, если это запись каталога. Запись в каталоге определяется как запись, имя которой заканчивается на «/».
    Syntax :public boolean isDirectory()
    Returns:
    true if this is a directory entry
  • void setComment (String comment): Устанавливает необязательную строку комментария для записи. Максимальная длина комментариев записи ZIP составляет 0xffff. Если длина указанной строки комментария превышает 0xFFFF байтов после кодирования, только первые байты 0xFFFF выводятся в запись файла ZIP.
    Syntax :public void setComment(String comment)
    Parameters:
    comment - the comment string
  • void setCompressedSize (long csize): устанавливает размер сжатых входных данных.
    Syntax :public void setCompressedSize(long csize)
    Parameters:
    csize - the compressed size to set to
  • void setCrc (long crc): устанавливает контрольную сумму CRC-32 для несжатых входных данных.
    Syntax :public void setCrc(long crc)
    Parameters:
    crc - the CRC-32 value
    Throws:
    IllegalArgumentException
  • void setExtra (byte [] extra): устанавливает необязательные данные дополнительного поля для записи.
    Syntax :public void setExtra(byte[] extra)
    Parameters:
    extra - the extra field data bytes
    Throws:
    IllegalArgumentException
  • void setMethod (int method): устанавливает метод сжатия для записи.
    Syntax :public void setMethod(int method)
    Parameters:
    method - the compression method, either STORED or DEFLATED
    Throws:
    IllegalArgumentException 
  • void setSize (long size): устанавливает несжатый размер входных данных.
    Syntax :public void setSize(long size)
    Parameters:
    size - the uncompressed size in bytes
    Throws:
    IllegalArgumentException 
  • void setTime (long time): устанавливает время модификации записи.
    Syntax :public void setTime(long time)
    Parameters:
    time - the entry modification time in number of milliseconds since the epoch
  • String toString (): возвращает строковое представление записи ZIP.
    Syntax :public String toString()
    Overrides:
    toString in class Object
    Returns:
    a string representation of the object.

Программа:

// Java-программа, демонстрирующая методы ZipEntry

  

import java.io.FileInputStream;

import java.io.IOException;

import java.io.PrintStream;

import java.nio.file.attribute.FileTime;

import java.util.concurrent.TimeUnit;

import java.util.zip.ZipEntry;

import java.util.zip.ZipInputStream;

  

class ZipEntryDemo

{

    public static void main(String[] args) throws IOException

    {

        FileInputStream fis = new FileInputStream("Awesome CV.zip");

        ZipInputStream jis = new ZipInputStream(fis);

        PrintStream cout=System.out;

  

        // читаем следующую запись файла ZIP

        ZipEntry ze = jis.getNextEntry();

  

        // иллюстрирующий getName ()

        cout.println(ze.getName());

  

        // иллюстрирующий getComment ()

        ze.setComment("This is a comment");

        cout.println(ze.getComment());

  

        // иллюстрируем setCompressedSize () и getCompressedSize ()

        ze.setCompressedSize(23l);

        cout.println("CompressedSize of the entry = " + ze.getCompressedSize());

  

        // иллюстрируем getSize () и setSize ()

        ze.setSize(53l);

        cout.println("Size = " + ze.getSize());

  

        // иллюстрируем getCrc () и setCrc ()

        ze.setCrc(01);

        cout.println(ze.getCrc());

  

        // иллюстрируем getMethod и setMethod

        ze.setMethod(ZipEntry.STORED);

        cout.println(ze.getMethod());

  

        // иллюстрируем getCreation и setCreation ()

        ze.setCreationTime(FileTime.from(10000, TimeUnit.DAYS));

        cout.println(ze.getCreationTime());

  

        // иллюстрирующий getLastAccessTime и setLastAccessTime

        ze.setLastAccessTime(FileTime.from(1000,TimeUnit.DAYS));

        cout.println(ze.getLastAccessTime());

  

        // иллюстрирующий clone ()

        ZipEntry zeclone = (ZipEntry) ze.clone();

        cout.println(zeclone.getName());

  

        // иллюстрирующий isDirectory

        cout.println(ze.isDirectory());

  

        // иллюстрирующий хэш-код ()

        cout.println("hashcode = " + ze.hashCode());

    }

}

Выход :

awesome-cv.cls
This is a comment
CompressedSize of the entry = 23
Size = 53
1
0
1997-05-19T00:00:00Z
1972-09-27T00:00:00Z
awesome-cv.cls
false
hashcode = 1687382489

Эта статья предоставлена Nishant Sharma . Если вы как GeeksforGeeks и хотели бы внести свой вклад, вы также можете написать статью с помощью contribute.geeksforgeeks.org или по почте статьи contribute@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Рекомендуемые посты:

Java.util.zip.ZipEntry класс в Java

0.00 (0%) 0 votes