Java : Récupérer des GIF stockés dans un JAR

Fermé
mach3 Messages postés 41 Date d'inscription vendredi 25 avril 2003 Statut Membre Dernière intervention 26 octobre 2003 - 24 sept. 2003 à 00:14
mach3 Messages postés 41 Date d'inscription vendredi 25 avril 2003 Statut Membre Dernière intervention 26 octobre 2003 - 29 sept. 2003 à 21:04
Salut à tous et à toutes...

J'ai un petit problème pour récupérer des fichiers GIF à partir d'un JAR (en Java, bien sûr...).
Pour résumer la situation, j'ai un jar qui s'appelle code.jar dans lequel j'ai plusieurs classes (dont une qui affiche des images). J'en ai un autre, pictures.jar, dans lequel plusieurs images au format gif sont stockées.
Depuis hier soir, à l'exécution, ma classe contenue dans code.jar n'arrive pas à trouver les fameuses images...
Que dois-je faire ?

Voilà deux bouts de code qui n'ont pas marché...

Image decor = java.awt.Toolkit.getDefaultToolkit().getImage("decor.gif");

Image decor = java.awt.Toolkit.getDefaultToolkit().getImage(getClass().getClassLoader().getResource("decor.gif"));

Petite précision : Les jar sont stockés dans le même répertoire. Ces deux jar apparaissent dans mon classpath. Et il n'y a aucune arborescence à l'intérieur de mes jar...

Voilà... Merci d'avance !

Mach3
A voir également:

4 réponses

mach3 Messages postés 41 Date d'inscription vendredi 25 avril 2003 Statut Membre Dernière intervention 26 octobre 2003 4
29 sept. 2003 à 21:04
Salut à tous !

Ca y est, j'ai trouvé... Bon, je sais ce que vous allez me dire... Franchement je suis con, mais bon, on ne se refait pas. Car, si ça plantait, ce n'est pas à cause de mon getResource( ), où que sais-je encore relatif à Java... Non, rien de tout ça !
En fait, c'est une question de casse. Windows n'est absolument pas sensible à la casse. Du coup, si j'ai mes gifs dans un répertoire normal, lorsque mon prog essaye d'accéder à ces gifs, il y arrive même si la casse est différente entre le nom du fichier écrit dans mon prog, et le nom réel de mes fichiers... Et ce n'est pas le cas lorsque mes gifs sont dans un jar... Là, la casse doit être respectée...

Ouf, me voilà rassuré, mon prog marche...

Allez, a+ tout le monde, et merci Stéphane pour ton aide...

Mach3
1
salut

essai ca :
Image decor = this.getToolkit().getImage("nom_de_la_classe".class.getResource("decor.gif"));
0
mach3 Messages postés 41 Date d'inscription vendredi 25 avril 2003 Statut Membre Dernière intervention 26 octobre 2003 4
24 sept. 2003 à 21:06
Salut, et merci de me répondre :-)

De quelle classe s'agit-il lorsque tu écris "nom_de_la_classe" ? Celle dans laquelle j'écris ce code ? Doit-elle implémenter une interface ou un truc dans le genre ?

A+

Mach3
0
Salut,
"nom_de_la_classe" = classe contenant la fonction main.
ex : le nom de ma classe contenant le main s'appelle "plateau"

Image img = this.getToolkit().getImage(plateau.class.getResource("DESNOIR6.gif"))
0
mach3 Messages postés 41 Date d'inscription vendredi 25 avril 2003 Statut Membre Dernière intervention 26 octobre 2003 4
25 sept. 2003 à 09:54
Ok, merci beaucoup... J'essayerai dès ce soir. Je te tiens au courant...
0
mach3 Messages postés 41 Date d'inscription vendredi 25 avril 2003 Statut Membre Dernière intervention 26 octobre 2003 4
27 sept. 2003 à 21:47
Salut

Désolé de ne pas avoir répondu plus tot... Bon, j'ai essayé ta méthode, mais ça marche pas des masses... En fait, il trouve mes gifs s'ils ne sont pas dans un jar... Du coup, c'est peut-être ma façon de "jarrer" qui n'est pas bonne... Mais je vois pas ce que je pourrais faire de plus...

a+

Mach3
0