[jdom-interest] How do I re-order child elements?
Thomas Nichols
thomas.nichols at iname.com
Tue May 15 07:32:36 PDT 2001
Good Day,
I need to re-order children of an Element. Since el.addContent() always
seems to _append_, what's the best way to do this?
Method 1: use getMixedContent() to get a List, then el.removeChildren(),
then el.addContent() for the Elements from the List.
Method 2:
Element newEl = el.clone();
newEl.removeChildren();
newEl.addContent ( /* from el.getChildren().iterator() */ );
Then copy everything back from newEl to el.
Neither looks very attractive, nor efficient - I'd guess method 2 would be
a dog. Anyone have any better suggestions?
Would there be a more general use for an Element.addContent (int index,
Element content) ? This would allow plenty of scope for re-ordering and
sorting at minimal (apparent) cost, and would only need passing down to
LinkedList.add (int index, Object o). To reposition an element, just
el.removeContent (child);
el.addContent (index, child);
What do you think? Do other people have this requirement?
Regards,
Thomas.
More information about the jdom-interest
mailing list