B
bernie
Gast
hallo zusammen,
ich stehe gerade etwas auf dem schlauch, viell kann mit jemand einen tipp geben ...
ich baue ein progrämmchen, dass eine xml-datei mit jdom parst und alle elemente, attribute und texte in einem gui als editierbare textfields darstellt. der benutzer kann die textfields also verändern. wenn er dann einen button "save" klickt, soll die xml mit allen änderungen gespeichert werden.
lesen und schreiben der xml-datei funktioniert. ich habe nach dem einlesen ein jdom Document, das ich auch wieder als File speichern kann(s. unten). nur: wie bekomme ich die änderungen in das Document?
tausend dank schonmal für jede hilfe!
so lese/schreibe ich meine xml-datei:
beim klicken auf save wird geschrieben:
ich stehe gerade etwas auf dem schlauch, viell kann mit jemand einen tipp geben ...
ich baue ein progrämmchen, dass eine xml-datei mit jdom parst und alle elemente, attribute und texte in einem gui als editierbare textfields darstellt. der benutzer kann die textfields also verändern. wenn er dann einen button "save" klickt, soll die xml mit allen änderungen gespeichert werden.
lesen und schreiben der xml-datei funktioniert. ich habe nach dem einlesen ein jdom Document, das ich auch wieder als File speichern kann(s. unten). nur: wie bekomme ich die änderungen in das Document?
tausend dank schonmal für jede hilfe!
so lese/schreibe ich meine xml-datei:
Code:
public Document doRead(File xmlFile){
Document doc = null;
try {
SAXBuilder builder = new SAXBuilder();
doc = builder.build( xmlFile );
}
catch (Exception e) {
e.printStackTrace();
}
return doc;
}
public boolean doWrite(Document doc, File xmlFile){
boolean success = false;
try {
XMLOutputter outp = new XMLOutputter();
outp.setFormat(Format.getPrettyFormat());
outp.output( doc, new FileOutputStream( xmlFile ) );
success = true;
} catch (Exception e) {
e.printStackTrace();
}
return success;
}
beim klicken auf save wird geschrieben:
Code:
public void actionPerformed(java.awt.event.ActionEvent e) {
String c = e.getActionCommand();
if (c.equals("save")){
doWrite(doc, outFile);
}
}