Ecrire dans un fichier texte dans un fichier jar [Résolu]

Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Dernière intervention
9 mai 2010
- 15 juin 2007 à 11:02 - Dernière réponse :
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Derniè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!
Afficher la suite 

Votre réponse

12 réponses

Meilleure réponse
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Dernière intervention
4 mars 2013
- 15 juin 2007 à 11:33
3
Merci
Ah ! là c'est différent, et je suis pas sûr que ca soit possible.

Merci cs_DARKSIDIOUS 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Meilleure réponse
Messages postés
5292
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
12 novembre 2018
- 15 juin 2007 à 13:27
3
Merci
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))

pour toper le rep temp du système :

String tmpDir = System.getProperty("java.io.tmpdir");

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

OoWORAoO

Merci Twinuts 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de Twinuts
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Dernière intervention
4 mars 2013
- 15 juin 2007 à 11:11
0
Merci
Utilise un FileWriter (il me semble que ca s'appelle comme cà).
Commenter la réponse de cs_DARKSIDIOUS
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Dernière intervention
9 mai 2010
- 15 juin 2007 à 11:15
0
Merci
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!
Commenter la réponse de dvoraky
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Dernière intervention
4 mars 2013
- 15 juin 2007 à 11:24
0
Merci
Ben tu veux écrire dans un fichier texte, pas dans ton jar non ?

Le fileWrite prend le fichier de destination, et après tu lui envoie juste les données que tu veux copier.
Commenter la réponse de cs_DARKSIDIOUS
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Dernière intervention
9 mai 2010
- 15 juin 2007 à 11:29
0
Merci
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!
Commenter la réponse de dvoraky
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Dernière intervention
9 mai 2010
- 15 juin 2007 à 11:36
0
Merci
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!
Commenter la réponse de dvoraky
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Dernière intervention
4 mars 2013
- 15 juin 2007 à 11:53
0
Merci
Pourquoi dépend de l'OS ?
Commenter la réponse de cs_DARKSIDIOUS
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Dernière intervention
9 mai 2010
- 15 juin 2007 à 13:53
0
Merci
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!
Commenter la réponse de dvoraky
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Dernière intervention
9 mai 2010
- 15 juin 2007 à 13:56
0
Merci
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!
Commenter la réponse de dvoraky
Messages postés
5292
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
12 novembre 2018
- 15 juin 2007 à 14:50
0
Merci
Salut,

profite du System.getProperty("java.io.tmpdir")
sous Windows
C:\WINDOWS\TEMP (ou un autre disque si windows n'est pas sur C:
sous Linux
/tmp

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

OoWORAoO
Commenter la réponse de Twinuts
Messages postés
744
Date d'inscription
dimanche 1 avril 2007
Dernière intervention
9 mai 2010
- 15 juin 2007 à 15:26
0
Merci
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!
Commenter la réponse de dvoraky

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.