précédent | suivant | table des matières
Cette classe, dérivée de ZipEntry, représente une entrée d'un fichier Jar. En plus des informations d'une ZipEntry, il y a trois informations;
Constructeur :
Méthodes :
Attributes getAttributes() |
Retourne les attributs de cette entrée se trouvant dans le manifeste. null sinon. |
Certificate[] getCertificates() |
Retourne les certificats : l'entrée doit être lue complètement pour qu'on puisses accéder aux certificats. |
CodeSigner[] getCodeSigners() |
Retourne les signataires du code : l'entrée doit être lue complètement pour qu'on puisses accéder aux signataires |
Exemple de code accédant à un fichier JAR :
try { JarInputStream jis = new JarInputStream(new FileInputStream("testJar.jar")); // le manifeste du fichier JAR Manifest mf = jis.getManifest(); Attributes attM = mf.getMainAttributes(); if(attM != null) System.out.println(attM.entrySet()); // Itération sur les entrées du fichier JAR JarEntry je = jis.getNextJarEntry(); while(je!=null){ System.out.println(je.getName()); // les attributs Attributes att = je.getAttributes(); if(att!=null)System.out.println(" "+att.entrySet() ); else System.out.println(); // lecture de l'entrée pour avoir accès aux certificats et signatures for(int c = jis.read(); c!=-1; c = jis.read()); // certificats System.out.println(" "+je.getCertificates()); // signatures CodeSigner[] cs = je.getCodeSigners(); if(cs != null){ System.out.print(" "); for(int i = 0; i<cs.length; ++i)System.out.print(cs[i]()); System.out.println(); } jis.closeEntry(); je = jis.getNextJarEntry(); } jis.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }