begin process at 2012 02 10 17:20:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

Utiliser des images ou fichier txt avec un jar exécutable


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Utiliser des images ou fichier txt avec un jar exécutable

mercredi 30 août 2006 à 02:09:54 | Utiliser des images ou fichier txt avec un jar exécutable

bourgi220

Bonjour,
Je me suis déjà beaucoup documenté sur les jar exécutables, j'ai notamment lu ce sujet: http://www.javafr.com/infomsg_CR-233-ER-FICHIER-JAR-EXECUTABLE_141476.aspx

On y explique notamment comment se servir d'images avec un jar exécutable. Mais j'ai essayé et peut etre que je m'y prend mal mais ça marche pas.

En gros voilà mon problème:
J'ai fait un programme qui utilise une image qui est dans le meme dossier (à la racine) que le programme. En dehors du jar ça fonctionne évidemment. Mais quand je tente d'utiliser le jar exécutable, il ne trouve pas l'image.

Que dois-je mettre exactement dans mon class-path si mon image s'appelle ah.jpg.

Encore une question, j'ai surement mal compris mais quand je lis ceci: http://java.developpez.com/faq/java/?page=execution
il me semble comprendre que l'on doit mettre les fichiers qu'on utilise (mon image en l'occurence) dans un fichier jar?? j'ai également essayé mais ça n'a pas marché chez moi. j'ai mis mon image dans un fichier jar puis dans mon manifest j'ai mis: "Class-Path: ./archive.jar" mais ça na pas marché non plus.

Aidez moi svp...

@+

mercredi 30 août 2006 à 07:57:14 | Re : Utiliser des images ou fichier txt avec un jar exécutable

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
J'ai pas trop bien compris ton problème : tu utilise des images en dehors de ton jar, ou à l'intérieur de celui-ci ?



mercredi 30 août 2006 à 09:40:34 | Re : Utiliser des images ou fichier txt avec un jar exécutable

Twinuts

Membre Club Administrateur CodeS-SourceS
Salut,

Pour les deux solutions ci-dessous ce que tu fais dans le manifest est innutile

1 - si tu mets des images dans un jar externe il te faut le voir comme un gros ZIP et recupéré dynamiquement les images dedans ce qui en soit n'est franchement pas complex à réaliser, il y a quelques exemples dessus sur le net!

2 - si tu le met dans le meme jar que celui contenant tes classes voici un exemple (ne met jamais de \ pour séparer un chemin vu qu'il est assimilable à une URL)
exemple admettons le jar toto.jar et dedans tu as les répertoires suivant  images/png/ contenant l'image toto.png

toto.jar
  |
  ------->images
                |
                ------->png
                             |
                             ------->toto.png

dans ton code tu devra proceder comme suit pour une methode non static :
URL url = getClass().getClassLoader().getResource("images/png/toto.png");
Image img = Toolkit.getDefaultToolkit().createImage(url);

et pour une classe static :
URL url = NomDeLaClasseCourrante.class.getClassLoader().getResource("images/png/toto.png");
Image img = Toolkit.getDefaultToolkit().createImage(url);

sinon tu peux passer par le system :
URL url = ClassLoader.getSystemClassLoader().getResource("images/png/toto.png");
Image img = Toolkit.getDefaultToolkit().createImage(url);

NOTE:
si tu veux récuperer un fichier se trouvant dans ton jar il ne faut pas passer par getResource mais par getResourceAsStream

exemple pour le fichier toto.txt se trouvant dans le répèrtoire fichiers/texte de ton jar toto.jar
toto.jar
  |
  ------->fichiers
                |
                ------->texte
                             |
                             ------->toto.txt

dans ton code tu devra proceder comme suit pour une methode non static :
InputStream is = getClass().getClassLoader().getResourceAsStream("fichiers/texte/toto.txt");

et pour une classe static :
InputStream is = NomDeLaClasseCourrante.class.getClassLoader().getResourceAsStream("fichiers/texte/toto.txt");

sinon tu peux passer par le system :
InputStream is =  ClassLoader.getSystemClassLoader().getResourceAsStream("fichiers/texte/toto.txt");

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
mercredi 30 août 2006 à 20:41:23 | Re : Utiliser des images ou fichier txt avec un jar exécutable

bourgi220

merci beaucoup pour ta réponse... ça marche nickel maintenant!

Mais je rencontre un nouveau problème, je n'arrive pas à écrire dans un fichier txt qui est dans mon jar... j'ai fait des recherches qui disent que c'est impossible... est-ce vrai?

@+ et encore merci!

mercredi 30 août 2006 à 20:51:59 | Re : Utiliser des images ou fichier txt avec un jar exécutable

Twinuts

Membre Club Administrateur CodeS-SourceS
Salut,

ton fichier et dans un jar qui est assimilable a un zip normalement tu peux le modifier mais faut le faire en plusieurs etapes :

1 - tu recupere le contenu
2 - tu modifie le contenu en memoire
3 - tu update le jar(regarde avec la class ZIP)

mais je ne pense pas que cela soit possible si le jar est celui qui contient ton application


------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
mercredi 30 août 2006 à 20:54:38 | Re : Utiliser des images ou fichier txt avec un jar exécutable

bourgi220

mais si la situation est la suivante:
le jar est dans le dossier "application/monjar.jar"
mon fichier txt est dans le mm dossier: "application/montxt.txt"

A partir de ce moment comment puis-je faire pour modifier montxt.txt à partir de monjar.jar??

encore merci ;-) @+

mercredi 30 août 2006 à 21:03:33 | Re : Utiliser des images ou fichier txt avec un jar exécutable

Twinuts

Membre Club Administrateur CodeS-SourceS
Donc il n'est pas dans ton jar?


------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
mercredi 30 août 2006 à 21:21:15 | Re : Utiliser des images ou fichier txt avec un jar exécutable

bourgi220

non en fait ça ne me pose pas de problème de ne pas le mettre dans mon jar...
mercredi 30 août 2006 à 21:23:16 | Re : Utiliser des images ou fichier txt avec un jar exécutable

Twinuts

Membre Club Administrateur CodeS-SourceS

si il n'est pas dans ton jar une simple modification de fichier suffit

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
mercredi 30 août 2006 à 21:53:45 | Re : Utiliser des images ou fichier txt avec un jar exécutable

bourgi220

non hélas ça ne marche pas...

mon fichier saving.dat est dans le meme dossier que mon jar et avec ce code ça ne marche pas:

                FileWriter fw = new FileWriter("saving.dat");
                BufferedWriter bw = new BufferedWriter(fw);
                PrintWriter outFile = new PrintWriter(bw);

Alors que dois-je mettre?


1 2

Cette discussion est classée dans : fichier, image, utiliser, jar, exécutable


Répondre à ce message

Sujets en rapport avec ce message

SOS URGENT, Problème lors de la création d'un jar exécutable [ par FunkyJulius ] Tout d'abord bonjour, Voilà, j'ai créer une petite applic, un jeu de Black Jack. Quand je l'éxécute sous eclipse, pas de problème, tout ce passe com exécutable jar plus lent que eclipse [ par yyyx ] Bonjour à tous !Je viens de créer une petite application java qui, à partir d'un fichier xls me renvoie les données dans un csv et les en-têtes de col Création d'un Exécutable avec un JNLP [ par wilkom2009 ] Salut, J'utilise la technologie JNLP dans un projet. Voici les détails: j'ai un fichier .JAR situé sur un serveur auquel sont connectés des postes cli Probleme fichier properties [ par Unifi ] Bonjour à tous, Tout d'abord je me suis permis de poster cette discussion dans cette catégorie mais je ne suis pas sûr que c'est bon. Donc veuillez Compiler un jar et ses lib [ par mx37 ] Bonjour à tous, Tout se trouve dans le titre, je voudrais savoir s'il est possible de compiler un fichier jar avec ses lib dans un tout nouveau fichi Problème avec fichier jar et JavaMail [ par MIFMIF ] Bonjours , J'ai creer une application java pour l'envoi automatique des e-mail ,l'application .jar marche bien si je la lance dans mon pc mais si je Aide sur mon exécutable jar [ par andoid ] Bonjour! J'ai fini mon programme et je voulais mettre dans mon executable jar un logo à la place du java. Si vous avez une idée Accéder à des fichiers depuis un .jar exécutable [ par profiter ] bonjour, j'ai fait le jar de mon application dans mon application j'ai besoin de lire des fichiers .jasper (j'utilise jasperreport ) l'execution da cacher une image dans un fichier wav [ par hajerboug ] Bonjour, Est il possible de cacher une image dans un fichier wav en utilisant la méthode du LSB. La représentation binaire d'un fichier wav me semble


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,682 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales