[JAVA] traitement de fichier texte

Résolu/Fermé
calaglin2 Messages postés 44 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 21 septembre 2009 - 27 avril 2007 à 11:40
calaglin2 Messages postés 44 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 21 septembre 2009 - 2 juin 2007 à 21:11
Bonjour je dois développer un programme en java permettant l'édition d'un fichier texte. Il doit permettre de modifier les champs voulus et les remplacer par d'autres.
J'ai lu que cela était possible en traitant puis en écrasant le fichier mais comment cela est il possible ?
Je sais déjà comment lire et écrire dans un fichier texte

merci d'avance
A voir également:

2 réponses

Utilisateur anonyme
27 avril 2007 à 12:08
Salut!

qu'entends-tu par "les champs voulus"?

Un fichier texte ne contient pas de "champs". A moins que tu ne veuilles parler d'un fichier CSV?

;-)
HackTrack
1
calaglin2 Messages postés 44 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 21 septembre 2009 13
27 avril 2007 à 13:40
je voulais juste dire que l'on pouvait changer ce que l'on voulait dans le texte et parfois des endroits précis dans le texte c'est tout :)
à vrai dire je développe un programme permettant de configurer un serveur samba, donc un logiciel qui édite le fichier smb.conf avec une interface graphique mais pour l'instant je m'occupe de la classe qui édite le .conf
0
alors personne n'a d'idées ?
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
2 mai 2007 à 11:33
La solution la plus simple, puisque tu sais comment lire écrire un fichier, est du lire le fichier afin de l'afficher dans un JText par exemple.
Ce JText tu lui donne la permission d'écriture dessus, afin que l'utisateur puisse en modifier le contenu. A ton interface tu ajoute un bouton "Enregistrer", sur lequel tu place un évênement "onclick" qui déclenche une action d'écrite.
L'action d'écriture consiste à reprendre la valeur du texte présent dans ton JText, et d'écraser le contenu du fichier avec ce nouveau texte.
Ainsi le contenu de ton fichier pourra etre modifiable à souhait.

Ensuite tu peux toujours faire un petit bouton "Choisir..." qui permet d'aller ouvrir un autre fichier, et voilà ton éditeur est pret :)

Si tu as d'autres questions..
0
calaglin2 Messages postés 44 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 21 septembre 2009 13
2 juin 2007 à 21:11
justement l'intérêt c'était de ne pas toucher directement au fichier, si il faut afficher tout le fichier dans un JText pour le modifier autant ne pas faire de programme et allé le modifier directement avec un traitement de texte.

j'ai trouvé la solution :
le fichier à modifier étant le smb.conf de samba, mon programme prend en argument le nom de l'option à modifier + la nouvelle valeur, il recherche l'option en parcourant le fichier et en le recopiant dans un nouveau fichier avec un printWriter.
Quand je rencontre l'option, je la recopie avec la nouvelle valeur et à la fin j'écrase l'ancienne version avec la nouvelle en renommant celle ci comme l'ancienne avec renameTo(File) de la classe File.
0