Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

AFFICHER DES INFOS OU LIRE LE CONTENU D'UN JAR


Information sur la source

Catégorie :Application Classé sous : contenu, lire, afficher, jar Niveau : Débutant Date de création : 06/06/2003 Date de mise à jour : 06/06/2003 01:21:31 Vu : 8 306

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

Description

Bonjour tout le monde.

J'ai vérifié, et je n'ai pas trouvé grand'chose sur les fichiers jar, alors je me suis dit que, comme les zip avec java me font suer, peut-être que je pourrai en aider avec cette source.

En effet, le jar, c'est un zip avec un manifest.mf dans un répertoire meta-inf n'est-ce pas?

Alors voilà quelques trucs utiles :
 

Source

  • // Pour tout le travail, nous allons utiliser la classe JarFile
  • JarFile MonFichierJar = new JarFile(new File("MonFichier.jar"));
  • // Une fois notre fichier créé, combien y'en a-t-il dedans?
  • int size = MonFichierJar.size(); // On a qu'à dire 4 fichiers compressés
  • //Quels sont leurs noms?
  • // A savoir: les entrées sont livrées sous forme de liste.
  • Enumeration MonFichierEntrees = MonFichier.entries();
  • //Ensuite on liste les noms
  • while (MonFichierEntrees.hasMoreElements()) {
  • JarEntry entry = (JarEntry) MonFichierEntrees.nextElement();
  • System.out.println(entry.getName());
  • }
  • // Explications:
  • // _comme MonFichierEntrees est une Enumeration, et que Enumeration n'a
  • // que 2 méthodes (hasMoreElements() et nextElement()), on crée une
  • boucle qui s'execute tant qu'il y aura une autre entrée. Ainsi, on
  • passe les fichiers qui sont dans le jar un par un.
  • _la classe JarEntry contient les infos sur les fichiers et les dossiers
  • individuels de l'archive. Ses méthodes sont
  • .getName() .getSize .getTime() .getAttributes()
  • // Donc dans mon exemple, on "crée une entrée" du prochain fichier puis
  • // on lui demande son nom.
  • // Pour prendre la taille NON-compressée:
  • System.out.println(entry.getSize());
  • // Pour la date:
  • Date date = new Date( entry.getTime() );
  • System.out.println(date);
  • // Pour les attributs, c'est encore une classe, ici la classe Attributes,
  • // dont la méthode pour nous sera .entrySet()
  • Attributes attr = entry.getAttributes();
  • System.out.println(attr.entrySet());
// Pour tout le travail, nous allons utiliser la classe JarFile
JarFile MonFichierJar = new JarFile(new File("MonFichier.jar"));

// Une fois notre fichier créé, combien y'en a-t-il dedans?
int size = MonFichierJar.size();            // On a qu'à dire 4 fichiers compressés

//Quels sont leurs noms?
// A savoir: les entrées sont livrées sous forme de liste.
Enumeration MonFichierEntrees = MonFichier.entries();

//Ensuite on liste les noms
while (MonFichierEntrees.hasMoreElements()) {
    JarEntry entry = (JarEntry) MonFichierEntrees.nextElement();
    System.out.println(entry.getName());
}

// Explications:
//    _comme MonFichierEntrees est une Enumeration, et que Enumeration n'a
//        que 2 méthodes (hasMoreElements() et nextElement()), on crée une
           boucle qui s'execute tant qu'il y aura une autre entrée. Ainsi, on
           passe les fichiers qui sont dans le jar un par un.
       _la classe JarEntry contient les infos sur les fichiers et les dossiers
           individuels de l'archive. Ses méthodes sont
                .getName()      .getSize       .getTime()       .getAttributes()

// Donc dans mon exemple, on "crée une entrée" du prochain fichier puis
// on lui demande son nom.

// Pour prendre la taille NON-compressée:
System.out.println(entry.getSize());

// Pour la date:
Date date = new Date( entry.getTime() );
System.out.println(date);

// Pour les attributs, c'est encore une classe, ici la classe Attributes,
// dont la méthode pour nous sera .entrySet()
Attributes attr = entry.getAttributes();
System.out.println(attr.entrySet());

Conclusion

Euh, si des fois je me répette, c'est pas que je vous croie bêtes mais c'est parce que je fait des efforts pour me faire comprendre. Les choses sont souvent très claires dans ma tête, et tellement claires que j'arrive pas à les faire comprendre aux autres...

N'oubliez pas que je prendrai en note tous vos conseils pour l'améliorer pour vous.

Tchao.
 

Commentaires et avis

signaler à un administrateur
Commentaire de Waldo2188 le 21/03/2005 15:54:25

Merci beaucoup pour ce tuto, il est vraiment utile.
Mais pourais-tu expliquer comment lire et écrire dans un jar?

signaler à un administrateur
Commentaire de Jujufouq le 29/08/2005 03:19:58

Non désolé, cela fait trop longtemps que je ne touche plus à Java et je ne me souviens plus du tout! Compare la date de la source et celle de ce post/commentaire et tu comprendras! Ca fait un while!

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Lister le contenu d'un jar [ par tominfo ] Salut à tous,Pour créer un programme je dois lister le contenu d'un certain package appartenant au fichier jar (depuis lequel il est lancé). Malheureu Lire et changer le contenu d'un fichier [ par amadou ] Salut a tous.Moi j'ai un probleme.Avec une boucle while, j'aimerai lire le contenu d'un fichier ligne par ligne et decider si oui ou nom la ligne doit Afficher le contenu d'un fichier [ par dam6278 ] Je souhaite afficher&nbsp; le contenu d'un fichier dans un JLabel. Je souhaite qu'il respecte la mise en forme du fichier. Je ne trouve aucun moyen de Lister le contenu d'un répertoire d'une archive JAR [ par jawspipeline ] salut, je cherche &#224; lister le contenu d'un r&#233;pertoire qui lui-m&#234;me fait partie d'une archive JAR est ce que quelqu'un aurait une id&#2 lire un fichier texte à l'intérieur d'un jar [ par superlolo2 ] Voici mon problème. J'ai créé une application qui a besoin d'utiliser deux fichiers texte. Jusque là, tout fonctionne.Mais lorsque j'ai voulu tout com Afficher le contenu d'un ArrayList dans une JSP [ par Listener ] Bonjour, Dans un scriplet d'une page A.jsp, j'ai ce bout de code : <%! public String afficher(ArrayList al){ StringBuffer sb = new StringBuffer(10 Réfénrece à la source du frame [ par pradayrolus ] &nbsp;&nbsp;&nbsp; Bonjour,Je sollicite votre aide pour pouvoir afficher le contenu d'un fichier HTML dans une frame.Voici le code utilis&#233; d'habi Comment lire un fichier texte dans un jar ? [ par thenaoh ] Bonjour à tous !Dans mon appli, je fais régulièrement des lectures dans des fichiers texte, comme l'illustre l'exemple ci-dessous :BufferedReader inpu Problème USB dans Mandrake [ par yayamo ] Bonjour tous le monde,   En fait, j'ai un problème pour  lire le contenu de  lecture de disquette Clés USB sa Modifier un fichier .jar [ par kolodz ] Voilà, j'ai un fichier .jar dont je voudrais modifier le contenu.Il y a dedans un fichier text que je dois modifier.J'arrive à le "dézip" avec mon bon


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,328 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.