Hallo zusammen.
Gerade angemeldet und schon ne Frage ... aber was sollte ich auch sonst hier? :]
nun gut .. also zu meiner Frage
folgender Code funktioniert :
Bei dem Code werden per jdom alle Unterelemente ausgegeben.
Den obigen Code habe ich dann erweitert zu folgendem:
Mit dem Code will ich ein bestimmtes child Element verändern (den text) und die anderen unverändert in die xml Datei zurück schreiben. Er bricht aber immer nach dem ersten durchlauf der if schleife mit folgendem Fehler ab:
Gerade angemeldet und schon ne Frage ... aber was sollte ich auch sonst hier? :]
nun gut .. also zu meiner Frage
folgender Code funktioniert :
Code:
List children = current.getChildren();
Iterator iterator = children.iterator();
while (iterator.hasNext()) {
Element child = (Element) iterator.next();
System.out.println(child.getName());
}
Bei dem Code werden per jdom alle Unterelemente ausgegeben.
Den obigen Code habe ich dann erweitert zu folgendem:
Code:
List children = root.getChildren();
Iterator iterator = children.iterator();
while (iterator.hasNext()) {
Element child = (Element) iterator.next();
System.out.println(child.getName());
if (!child.getName().equals(current)) {
Element a = new Element(child.getName()).setText(child.getText());
root.addContent(a);
} else {
Element a = new Element(child.getName()).setText(value);
System.out.println(a.getText());
root.addContent(a);
System.out.println(a.getName() + " wurde in " + a.getText() + " geaendert.");
}
}
Mit dem Code will ich ein bestimmtes child Element verändern (den text) und die anderen unverändert in die xml Datei zurück schreiben. Er bricht aber immer nach dem ersten durchlauf der if schleife mit folgendem Fehler ab:
Code:
Exception in thread "main" java.util.ConcurrentModificationException
at org.jdom.ContentList$FilterListIterator.checkConcurrentModification(ContentList.java:978)
at org.jdom.ContentList$FilterListIterator.hasNext(ContentList.java:689)
at Xml_put.change(Xml_put.java:54)
at ajcc.main(ajcc.java:42)
[/Ccode]
Zur Info : Zeile 54 ist folgende Zeile: while (iterator.hasNext()) {
Danke schonmal
bye