bonsoir a tous,
j'ai utilisé Jdom avec javaFX sur netbeans pour créer un fichier XML dans lequel j'enregistre les données via mon interface (un ensemble de JLabel et de Jtextfield) . en fait en appuyant sur le bouton Enregistrer de mon interface le contenu des JLabel et des Jtextfield sera enregistrer dans le fichier xml.
mais j'ai un probleme , lorsque je ferme l'interface et et je l'execute une autre fois , il se produit un ecrasement des données precedentes.
s'il vous plait aidez moi c'est urgent.
voila mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110 import com.sun.org.apache.xerces.internal.dom.DOMImplementationImpl; import java.io.File; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.Pos; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.scene.layout.HBox; import javafx.scene.text.Text; import javafx.stage.Stage; import org.jdom2.DocType; import org.jdom2.Document; import org.jdom2.Element; import org.jdom2.input.SAXBuilder; import org.jdom2.output.Format; import org.jdom2.output.XMLOutputter; import org.w3c.dom.DOMImplementation; public class HBoxSample extends Application { static void affiche() { try { XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat()); sortie.output(document, System.out); } catch (java.io.IOException e){} } static void enregistre(String fichier) { try { XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat()); sortie.output(document, new FileOutputStream(fichier)); } catch (java.io.IOException e){} } static Element racine = new Element("personnes"); static org.jdom2.Document document = new Document(racine); private void init(Stage primaryStage) { final Group root = new Group(); primaryStage.setResizable(false); primaryStage.setScene(new Scene(root, 800,100)); final Label label = new Label("nom:"); final TextField tb = new TextField(); final Button button = new Button("enregistrer"); final Label label2 = new Label("prenom:"); final TextField tb1 = new TextField(); final Label label4=new Label("Tel:"); final TextField tb2=new TextField(); final Label label3 = new Label(); button.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent e) { Element etudiant = new Element("etudiant"); racine.addContent(etudiant); Element nom = new Element("nom"); nom.setText(tb.getText()); etudiant.addContent(nom); Element Prenom = new Element("prenom"); Prenom.setText(tb1.getText()); etudiant.addContent(Prenom); Element Tel = new Element("tel"); Tel.setText(tb2.getText()); etudiant.addContent(Tel); } }); HBox hbox = new HBox(5); hbox.getChildren().addAll(label, tb); hbox.getChildren().addAll(label2, tb1); hbox.getChildren().addAll(label4, tb2, button); hbox.setAlignment(Pos.CENTER_LEFT); root.getChildren().add(hbox); } public double getSampleWidth() { return 800; } public double getSampleHeight() { return 100; } @Override public void start(Stage primaryStage) throws Exception { init(primaryStage); primaryStage.show(); } public static void main(String[] args) { launch(); affiche(); enregistre("Exercice1.xml"); } }
Partager