Affichage d'un fichier XML dans une zone de texte (JTexteArea)

Ahlemrhayem Messages postés 7 Date d'inscription mardi 22 juillet 2014 Statut Membre Dernière intervention 10 août 2014 - 10 août 2014 à 12:47
cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 - 11 sept. 2014 à 12:29
Bonjour mes amis ,
J'ai créé deux fichiers XML en JDOM une pour l'utilisateur et l'autre pour le moyen de transport utilisée par cet utilisateur. Après j'ai créé un programme qui permet d'extraire des informations à partir de ces fichiers. Aussi j'ai créé une interface graphique qui contient des boutons. Je cherche comment je peux afficher ce fichier dans une zone de texte en cliquant sur le bouton perspective. Par exemple en cliquant sur le bouton utilisateur alors le fichier XML qui décrit l'utilisateur s'affiche dans la zone de texte au lieu de console, et si je clique sur le bouton moyen de transport alors le fichier qui décrit le moyen est affiché dans cette zone.
J'espère que l'idée est claire. Puis selon le fichier XML qui s'affiche dans la zone lorsque je clique sur le bouton extraction des informations alors la fenêtre qui s'affiche correspond au fichier qui est affichée dans la zone de texte. J'ai réussi de construire l'interface (en java swing) mais comment afficher le fichier XML dans la zone en cliquant sur un bouton c'est très difficile de faire puisque je suis débutante en java. Merci bien pour vos aides :)

1 réponse

cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 11
11 sept. 2014 à 12:29
Salut Ahlemrhayem,

Rassure toi, ce n'est pas difficile. :-)

Pour les boutons, tu peux leur dire quoi faire lorsque l'on clique dessus via un ActionListener. Tu implémentes cette interface et tu l'ajoutes à ton boutton via la méthode addActionListener.

Un rapide petit exemple :

JButton btn = new JButton("Mon boutton");
btn.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent evt) {
System.out.println("Tu as cliqué sur le bouton");
}
});

Concernant la lecture du fichier xml, cela dépend de comment tu veux l'afficher...
Si tu veux l'afficher tel quel (comme un fichier texte), tu peux simplement passer par un BufferedReader et l'ajouter petit à petit dans ton JTextArea
de nouveau, un petit exemple:

JTextArea area = new JTextArea();
try {
String filePath = "nom_de_mon_fichier.xml";
//on ouvre le fichier et on crée les objets utilisés pour le lire
FileInputStream fis = new FileInputStream(filePath);
Reader r = new Reader(fis);
BufferedReader reader = new BufferedReader(r);

//on vide le text area
area.setText("");

//on va lire le fichier et ajouter son contenu dans le text area
while(reader.ready) {
area.append(reader.readLine() + "\n");
}
} catch(IOException ex) {
ex.printStackTrace();
}

voila, j'ai peut-être quelques fautes dans le code (je ne l'ai pas compilé ou autre) mais cela devrait te permettre d'avancer et de faire ce que tu désires.

bon courage

Cormandyr
0
Rejoignez-nous