dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 2010
-
15 juin 2007 à 11:02
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 2010
-
15 juin 2007 à 15:26
Salut à tous!
Bon voilou, j'ai bien cherché (je crois) et je n'ai pas trouvé de réponse à cette question : J'ai un fichier jar exécutable et j'aimerais écrire dans un fichier texte.
J'ai déjà trouvé pour lire un fichier texte dans un jar :
InputStream in = ClassLoader.getSystemResourceAsStream("META-INF/account");
BufferedReader lecteurAvecBuffer = new BufferedReader(new InputStreamReader(in));
Mais pour écrire dans un fichier, je n'ai point trouvé.
Alors voilà, déjà, est-ce possible???
Merci de vos réponses.
+
C'est après des heures de codage que j'ai compris pourquoi les mecs de Java ont choisi une tasse de café comme logo!
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 15 juin 2007 à 13:27
Salut,
tu peux decompresser et
re-creer ton jar dans le rep temp de l'OS (attention ne remplace
pas le jar en cours d'execution sinon tu risques d'avoir un décalage du
code (sauf si tu te fais ton classloader et que tu précharges le code
en ram mais encore là c'est pas terrible))
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 15 juin 2007 à 11:15
Le problème, c'est qu'un FileWriter prend en argument un File.
Or, si j'utilise normalement les File, avec Eclipse, cela va marcher, mais avec le jar, pas du tout.
Donc, voilà, je cherche une alternative...
C'est après des heures de codage que j'ai compris pourquoi les mecs de Java ont choisi une tasse de café comme logo!
Vous n’avez pas trouvé la réponse que vous recherchez ?
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 15 juin 2007 à 11:29
Si en fait, mon fichier texte se trouve dans le jar.
C'est là tout le problème.
L'ultime solution serait de créer un fichier texte temporaire... mais bon si je pouvais savoir comment écrire dans le fichier texte dans le jar, ça serait "vachement" cool.
C'est après des heures de codage que j'ai compris pourquoi les mecs de Java ont choisi une tasse de café comme logo!
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 15 juin 2007 à 11:36
D'après ce que j'ai vu sur le net, ça ne serait pas possible... A part de recréer un jar, avec le nouveau fichier à l'intérieur...
Pas terrible, n'est ce pas?
Bon allé, tant pis je vais me faire un fichier temporaire qui dépendra de l'OS utilisé, ça sera pas mal quand même ^^
Merci à toi DARKSIDIOUS et puis bon week end.
++
C'est après des heures de codage que j'ai compris pourquoi les mecs de Java ont choisi une tasse de café comme logo!
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 15 juin 2007 à 13:53
Ouais mais en fait, je créé un fichier temporaire au lieu de recréer un archive jar. C'est moins pénible à faire...
System.getProperty("user.home") et hop ça roule. C'est juste que le fichier ne pourra pas être le même sur une autre machine mais bon tant pis.
Merci quand même Twinuts, et merci à toi DARKSIDIOUS.
" See you soon, space cowboy! " C'est après des heures de codage que j'ai compris pourquoi les mecs de Java ont choisi une tasse de café comme logo!
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 15 juin 2007 à 13:56
Ah, j'avais pas vu ton post DARKSIDIOUS, désolé.
"
Pourquoi dépend de l'OS ? " me demandes tu? Tout simplement, parce que si je mettais en dur : "C:\temp...." bon ça le fait moyen sur un système Linux. Et, étant donnné que je suis plus Linux que Windows, il me fallait un truc qui marche sur ces deux plate-formes.
Donc, avec le System.getProperty c'est niquel.
Voilou,
++
C'est après des heures de codage que j'ai compris pourquoi les mecs de Java ont choisi une tasse de café comme logo!
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 15 juin 2007 à 15:26
Ouais mais en fait, que ça reste après la fermeture de la session, ça me serait pas trop mal... Un peu, une sorte de sauvegarde que je fais donc bon, dans mon contexte, finalement, je m'en tire bien.
Merci quand même Twinuts
Il est vrai que java.io.tmpdir est pratique dans d'autre cas (notament pour décompresser des fichiers afin de manipuler les fichiers plus simplement...)
C'est après des heures de codage que j'ai compris pourquoi les mecs de Java ont choisi une tasse de café comme logo!