此類用於表示 ZIP 文件條目。
構造函數
- ZipEntry(字符串名稱):創建具有指定名稱的新 zip 條目。
- ZipEntry(ZipEntry e):使用取自指定 zip 條目的字段創建新的 zip 條目。
方法:
- 對象clone():返回此條目的副本。
Syntax :public Object clone() Overrides: clone in class Object 返回: a clone of this instance.
- 字符串getComment():返回條目的注釋字符串,如果沒有則返回 null。
Syntax :public String getComment() 返回: the comment string for the entry, or null if none
- 長getCompressedSize():返回壓縮條目數據的大小,如果未知,則返回 -1。在存儲條目的情況下,壓縮大小將與條目的未壓縮大小相同。
Syntax :public long getCompressedSize() 返回: the size of the compressed entry data, or -1 if not known
- 長getCrc():返回未壓縮條目數據的 CRC-32 校驗和,如果未知則返回 -1。
Syntax :public long getCrc() 返回: the CRC-32 checksum of the uncompressed entry data, or -1 if not known
- 字節[]getExtra():返回條目的額外字段數據,如果沒有則返回 null。
Syntax :=public byte[] getExtra() 返回: the extra field data for the entry, or null if none
- int getMethod():返回條目的壓縮方法,如果未指定,則返回 -1。
Syntax :public int getMethod() 返回: the compression method of the entry, or -1 if not specified
- 字符串getName():返回條目的名稱。
Syntax :public String getName() Returns: the name of the entry
- 長getSize():返回條目數據的未壓縮大小,如果未知則返回 -1。
Syntax :public long getSize() 返回: the uncompressed size of the entry data, or -1 if not know
- 長getTime():返回條目的修改時間,如果未指定,則返回 -1。
Syntax :public long getTime() 返回: the modification time of the entry, or -1 if not specified
- int hashCode():返回該條目的哈希碼值。
Syntax :public int hashCode() Overrides: hashCode in class Object 返回: a hash code value for this object.
- 布爾值isDirectory():如果這是一個目錄條目,則返回 true。目錄項被定義為名稱以“/”結尾的目錄項。
Syntax :public boolean isDirectory() 返回: true if this is a directory entry
- void setComment(字符串注釋):設置條目的可選注釋字符串。ZIP 條目注釋的最大長度為 0xffff。如果編碼後指定注釋字符串的長度大於 0xFFFF 字節,則僅將前 0xFFFF 字節輸出到 ZIP 文件條目。
Syntax :public void setComment(String comment) 參數: comment - the comment string
- 無效setCompressedSize(長csize):設置壓縮條目數據的大小。
Syntax :public void setCompressedSize(long csize) 參數: csize - the compressed size to set to
- 無效setCrc(長CRC):設置未壓縮條目數據的 CRC-32 校驗和。
Syntax :public void setCrc(long crc) 參數: crc - the CRC-32 value Throws: IllegalArgumentException
- 無效setExtra(字節[]額外):設置條目的可選額外字段數據。
Syntax :public void setExtra(byte[] extra) Parameters: extra - the extra field data bytes Throws: IllegalArgumentException
- 無效setMethod(int方法):設置條目的壓縮方法。
Syntax :public void setMethod(int method) 參數: method - the compression method, either STORED or DEFLATED Throws: IllegalArgumentException
- 無效setSize(長尺寸):設置條目數據的未壓縮大小。
Syntax :public void setSize(long size) Parameters: size - the uncompressed size in bytes Throws: IllegalArgumentException
- void setTime(長時間):設置條目的修改時間。
Syntax :public void setTime(long time) Parameters: time - the entry modification time in number of milliseconds since the epoch
- 字符串toString():返回 ZIP 條目的字符串表示形式。
Syntax :public String toString() Overrides: toString in class Object Returns: a string representation of the object.
程序:
//Java program demonstrating ZipEntry methods
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;
//reading the next ZIP file entry
ZipEntry ze = jis.getNextEntry();
//illustrating getName()
cout.println(ze.getName());
//illustrating getComment()
ze.setComment("This is a comment");
cout.println(ze.getComment());
//illustrating setCompressedSize() and getCompressedSize()
ze.setCompressedSize(23l);
cout.println("CompressedSize of the entry = " + ze.getCompressedSize());
//illustrating getSize() and setSize()
ze.setSize(53l);
cout.println("Size = " + ze.getSize());
//illustrating getCrc() and setCrc()
ze.setCrc(01);
cout.println(ze.getCrc());
//illustrating getMethod and setMethod
ze.setMethod(ZipEntry.STORED);
cout.println(ze.getMethod());
//illustrating getCreation and setCreation()
ze.setCreationTime(FileTime.from(10000, TimeUnit.DAYS));
cout.println(ze.getCreationTime());
//illustrating getLastAccessTime and setLastAccessTime
ze.setLastAccessTime(FileTime.from(1000,TimeUnit.DAYS));
cout.println(ze.getLastAccessTime());
//illustrating clone()
ZipEntry zeclone = (ZipEntry) ze.clone();
cout.println(zeclone.getName());
//illustrating isDirectory
cout.println(ze.isDirectory());
//illustrating hashcode()
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
相關用法
- Java Java.util.zip.ZipOutputStream用法及代碼示例
- Java Java.util.zip.ZipInputStream用法及代碼示例
- Java Java.util.zip.GZIPInputStream用法及代碼示例
- Java Java.util.zip.InflaterOutputStream用法及代碼示例
- Java Java.util.zip.DeflaterInputStream用法及代碼示例
- Java Java.util.ArrayDeque.add()用法及代碼示例
- Java Java.util.ArrayDeque.addFirst()用法及代碼示例
- Java Java.util.ArrayDeque.addLast()用法及代碼示例
- Java Java.util.ArrayDeque.clear()用法及代碼示例
- Java Java.util.ArrayDeque.clone()用法及代碼示例
- Java Java.util.ArrayDeque.descendingIterator()用法及代碼示例
- Java Java.util.ArrayDeque.element()用法及代碼示例
- Java Java.util.ArrayDeque.getFirst()用法及代碼示例
- Java Java.util.ArrayDeque.getLast()用法及代碼示例
- Java Java.util.ArrayDeque.isEmpty()用法及代碼示例
- Java Java.util.ArrayDeque.iterator()用法及代碼示例
- Java Java.util.ArrayDeque.peek()用法及代碼示例
- Java Java.util.ArrayDeque.peekFirst()用法及代碼示例
- Java Java.util.ArrayDeque.peekLast()用法及代碼示例
- Java Java.util.ArrayDeque.poll()用法及代碼示例
- Java Java.util.ArrayDeque.pollFirst()用法及代碼示例
- Java Java.util.ArrayDeque.pollLast()用法及代碼示例
- Java Java.util.ArrayDeque.pop()用法及代碼示例
- Java Java.util.ArrayDeque.push()用法及代碼示例
- Java Java.util.ArrayDeque.remove()用法及代碼示例
注:本文由純淨天空篩選整理自佚名大神的英文原創作品 Java.util.zip.ZipEntry class in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。