📜  Java Java类

📅  最后修改于: 2022-05-13 01:54:50.212000             🧑  作者: Mango

Java Java类

此类用于表示 JAR 文件条目。
构造函数:

  • JarEntry(JarEntry je) :创建一个新的 JarEntry,其中的字段取自指定的 JarEntry 对象。
  • JarEntry(String name) :为指定的 JAR 文件条目名称创建一个新的 JarEntry。
  • JarEntry(ZipEntry ze) :创建一个新的 JarEntry,其中的字段取自指定的 ZipEntry 对象。

方法:

  • 属性 getAttributes() :返回此条目的清单属性,如果没有,则返回 null。
    Syntax :public Attributes getAttributes()
                             throws IOException
    Returns:
    the Manifest Attributes for this entry, or null if none
  • Certificate[] getCertificates() :返回此条目的证书对象,如果没有则返回 null。
    Syntax :public Certificate[] getCertificates()
    Returns:
    the Certificate objects for this entry, or null if none.
  • CodeSigner[] getCodeSigners() :返回此条目的 CodeSigner 对象,如果没有则返回 null。
    Syntax :public CodeSigner[] getCodeSigners()
    Returns:
    the CodeSigner objects for this entry, or null if none.

从类Java.util.zip.ZipEntry 继承的方法
克隆,getComment,getCompressedSize,getCrc,getExtra,getMethod,getName,getSize,getTime,hashCode,isDirectory,setComment,setCompressedSize,setCrc,setExtra,setMethod,setSize,setTime,toString
从类Java.lang.Object 继承的方法
等于,完成,getClass,通知,notifyAll,等待,等待,等待

注意:这些程序将无法在在线 IDE 上运行,因为它们无法读取文件
方案一:

//Java program demonstrating JarEntry method
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.util.jar.JarEntry;
import java.util.jar.JarInputStream;
class JarEntryDemo
{
    public static void main(String[] args) throws IOException 
    {
        FileInputStream fis = new FileInputStream("codechecker.jar");
        JarInputStream jis = new JarInputStream(fis);
        JarEntry je=jis.getNextJarEntry();
  
        PrintStream out = System.out;
  
        //illustrating getAttributes
        out.println(je.getAttributes());
  
        //illustrating getCodeSigner
        out.println(je.getCodeSigners());
  
        //illustrating getCertificates
        out.println(je.getCertificates());
    }
}

方案二:

//Java program demonstrating JarEntry method
package java.util.jar;
    
 import java.io.IOException;
 import java.util.zip.ZipEntry;
 import java.security.CodeSigner;
 import java.security.cert.Certificate;
  
 public class JarEntry extends ZipEntry
 {
    Attributes attr;
    Certificate[] certs;
    CodeSigner[] signers;
   
    public JarEntry(String name) 
    {
        super(name);
    }
   
    public JarEntry(ZipEntry ze) 
    {
        super(ze);
    }
    
    public JarEntry(JarEntry je)
    {
        this((ZipEntry)je);
        this.attr = je.attr;
        this.certs = je.certs;
        this.signers = je.signers;
    }
    
    public Attributes getAttributes() throws IOException 
    {
      return attr;
    }
    
    public Certificate[] getCertificates() 
    {
        return certs == null ? null : (Certificate[]) certs.clone();
    }
    
    public CodeSigner[] getCodeSigners() 
      
    {
        return signers == null ? null : (CodeSigner[]) signers.clone();
    }
}