[jdom-interest] delete element from xml file
Deepa Janamatti (RBEI/EMT2)
Deepa.Janamatti at in.bosch.com
Mon Dec 15 19:17:52 PST 2008
Hello,
Using an Iterator might lead to ConcurrentModificationException. So, use ListIterator instead of Iterator to remove the element.
Regards,
Deepa
-----Original Message-----
From: jdom-interest-bounces at jdom.org [mailto:jdom-interest-bounces at jdom.org] On Behalf Of Laurent Bihanic
Sent: Tuesday, 16. December 2008 4:45 AM
To: meriem bessais
Cc: jdom-interest at jdom.org
Subject: Re: [jdom-interest] delete element from xml file
Hi,
You should not iterate on children and modify the content directly on the
element at the same time.
In your for() loop, use i.remove() to remove the current element.
Laurent
meriem bessais a écrit :
> *I want to delete an element from xml-file. this is my code but the file
> dosen't change when I test it.*
>
> *public* *static* String supp(){
> *try*{
> /racine/=/document/.getRootElement();
> Element rac=/racine/.getChild("voitures");
> List listelt = rac.getChildren();
> *int* ok=1;
> Iterator i = listelt.iterator();
> *while*(i.hasNext()&& ok==1)
> {
> Element courrent = (Element)i.next();
> *if*
> (courrent.getAttribute("immatricule").getValue().equals("8345 tU 125")){
> System./out/.println("
> "+courrent.getAttribute("immatricule").getValue());
> //Element free = (Element)courrent.detach();
> System./out/.println(rac.getName());
>
> rac.removeContent(courrent);
> ok=0;
> //courrent.removeChild(couleur);
> System./out/.println("supprimé");
> }
> }}*catch*(Exception e){*return* e.getMessage();}
_______________________________________________
To control your jdom-interest membership:
http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com
More information about the jdom-interest
mailing list