Ecrire a la fin d'un fichier [JAVA] - Java - Programmation
Marsh Posté le 05-05-2003 à 20:00:37
Le plus simple est d'utiliser la classe java.io.RandomAccessFile (tu peux aussi jouer avec le package java.nio qui est super pratique pour ce genre de manips mais si t'es débutant, je sais pas si c'est conseillé ; j'en sais rien en fait). Ensuite tu te positionne à la fin de ton fichier en t'aidant des méthodes length() et seek(). Là-dessus, tu fais un write() et tu gagnes la guerre.
Si t'as le temps et l'envie, fouille un peu du côté de java.nio, c'est un package très bien fait et assez intuitif une fois qu'on a compris le principe de fonctionnement
Marsh Posté le 05-05-2003 à 20:45:56
le plus simple c'est de faire un append en mettant à vrai le 2e paramêtre du constructeur :
Code :
|
ou
Code :
|
Marsh Posté le 05-05-2003 à 20:47:05
Ah ouais
Marsh Posté le 05-05-2003 à 20:47:36
ce topic revient tout le temps
y'a un constructeur des Writer qui prend un boolean pour "append"
http://java.sun.com/j2se/1.4.1/doc [...] 20boolean)
edit: tiens, since 1.4
ha non il etait deja en 1.3 avec un String filename
http://java.sun.com/j2se/1.3/docs/ [...] 20boolean)
edit2: top grillé. tout ça parce que je trouve jamais l'url de la javadoc sur le net
Marsh Posté le 05-05-2003 à 23:31:52
débutant !
suffit tu tapper le nom de la classe dans google !
sinon, ouais c'est nul : le booleen append existait pas avec un peremêtre File jusqu'à la jdk 1.4 falait repasser par la String
Marsh Posté le 05-05-2003 à 23:39:07
benou a écrit : débutant ! |
ben euh non justement
(enfin je tape tjs javadoc ClassName et puis c jamais bon )
Marsh Posté le 05-05-2003 à 23:46:06
ben si : http://www.google.fr/search?hl=fr& [...] er&spell=1
Marsh Posté le 05-05-2003 à 23:47:03
oui oui mais si tu fous javadoc devant c mort
Marsh Posté le 05-05-2003 à 23:53:44
the real moins moins a écrit : oui oui mais si tu fous javadoc devant c mort |
yakapa !
Marsh Posté le 06-05-2003 à 08:49:47
le plus simple c (surtout pour un débutant...)
1/ je lis et stock en string!
2/ je construit le nouveau fichier
3/ je réécri la string
==> propre simple éfficace et applicable à n'importe quel langage!!!
Marsh Posté le 06-05-2003 à 09:16:46
artemice a écrit : le plus simple c (surtout pour un débutant...) ... |
ben non. Le plus simple c'est d'ajouter 5 caractères à du code poru que ca marche : ",true"
Marsh Posté le 06-05-2003 à 19:22:26
d'accord mais bon .... au moin il serait déjà passé autre chose!
Marsh Posté le 27-10-2005 à 12:00:16
Salut, je debute et je me trouve egalement confronté à ce pb.
voici le code que j'utilise pour écrire dans mon fichier:
Code :
|
j'ai essayé comme vous avez dis precedement d'ajouter boolean append dans la ligne du FileInputStream, mais ça me cause une erreur à l'execution.
La solution de lire le fichier, en faire un String, regenerer et recopier dans un fichier fonctionne, mais je prefererais ne pas avoir à faire tout cela si c'est possible...
Avez vous une suggestion pour mon code?
Merci
Marsh Posté le 27-10-2005 à 12:20:24
- Mauvaise gestion des exceptions.
- Quelle erreur ??
Marsh Posté le 27-10-2005 à 12:57:31
Pourquoi vous me dites mauvaises gestions des exceptions?
L'erreur que j'ai est:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Syntax error on token "boolean", delete this token
at EcritDansFichier2.main(EcritDansFichier2.java:19)
qd j'ajoute boolean append à la ligne 19
Marsh Posté le 27-10-2005 à 13:12:57
Merci bcp phnatomass !!
Je n'avais pas compris comme ça l'utilisation de la fonction.
Je vais maintenant pouvoir tester les autres possibilités
Un grd merci
Marsh Posté le 27-10-2005 à 13:27:23
As tu regardé la javadoc de FileOutputStream quand tu as eu ton exception ?
Marsh Posté le 27-10-2005 à 13:30:32
oui j'etais dessus, mais je n'avais pas compris ce qu'il fallait faire avec true, boolean...
maintenant je pense avoir mieux compris comment utiliser la javadoc
Marsh Posté le 27-10-2005 à 15:45:58
--> White-rabbit
Dans le constructeur de PrintStream, rajoute un ",true" ou bien rajoute un p.flush(); après le p.write(xxx);
Ca t'évitera des soucis...
Marsh Posté le 27-10-2005 à 16:27:29
Les soucis ne seront qu'en partie évités avec une mauvaise gestion des exceptions...
Marsh Posté le 27-10-2005 à 17:02:00
the real moins moins a écrit : oui oui mais si tu fous javadoc devant c mort |
L'autre solution, c'est d'aller sur la page Search J2SE Documentation (là c'est pour Java5, mais les autres sont dispos aussi), et si t'es sous Firefox tu clickette du bouton droit dans la textbox puis tu sélectionnes "Add a Keyword for this search...", tu donnes un nom à ton machin (genre "Javadoc J2SE Java5" ), un préfixe simple (jd), tu le fous dans le répertoire "Quick Searches", et t'as plus qu'à taper "jd NomDeTaClasse" pour taper une recherche dessus
(il y a ptet un moyen d'aller directement sur l'article, dans le style "I'm Feeling Lucky", mais bon je l'ai pas encore trouvé)
edit: trouvé, suffit d'utiliser le formulaire de recherche de Javadocs
eedit: merdoum, à partir de javadocs ça marche pas
Ya un bookmarklet, et tu peux l'ajouter à tes moteurs de recherche FF par contre
eeedit: ça marche pas parce que ces boulets n'utilisent pas le submit standard, ils passent par du JS
Marsh Posté le 27-10-2005 à 17:37:25
ReplyMarsh Posté le 27-10-2005 à 17:41:48
lorill a écrit : c'est bien beau tout ca, mais la remarque date de 2003 |
Ouais, et mwin mwin sévissait déjà sur ce forum.
Je ne sais pas si pingouino existait déjà.
Putain comme le temps file, hein.
Marsh Posté le 27-10-2005 à 17:57:59
Le pire j'ai lu la file sans me rendre compte qu'elle avait été initier à cette époque
Marsh Posté le 27-10-2005 à 18:06:48
Merci à white-rabbit pour ce topic revival.
Marsh Posté le 27-10-2005 à 20:02:15
lorill a écrit : c'est bien beau tout ca, mais la remarque date de 2003 |
Et merde
S'pas grave, ça peut servir à des gens
Marsh Posté le 28-10-2005 à 00:33:27
ué ben, mtnt, je fous plus "javadoc" dans mes recherches google, et le moteur de recherche sur la javadoc online n'existait pas à l'epoque
Marsh Posté le 28-10-2005 à 09:07:35
the real moins moins a écrit : n'existait pas à l'epoque |
Ca te rajeunit pas, hein.
Marsh Posté le 28-10-2005 à 11:42:12
Reply
Marsh Posté le 05-05-2003 à 19:57:27
Je cherche désespérément à écrire à la fin d?un fichier. En faite, chaque fois que je vais ouvrir un fichier je veux pouvoir conserver ce qu?il y a dedans et rajouter des donnes à la fin, ça parait stupide mais j?ai pas réussit (je suis débutant qu cas ou vous l?auriez pas deviné).
Merci d?avance