![]() |
The Java Developers Almanac 1.4Order this book from Amazon. |
e537. Removing All the Attributes in a DOM ElementThe tricky part of removing all the attributes in an XML element is to realize that attributes with a default value cannot be removed. Therefore, the following code will never terminate if the element has an attribute with a default value:// Very bad code; may never terminate NamedNodeMap attrs = element.getAttributes(); while (attrs.getLength() > 0) { attrs.removeNamedItem(attrs.item(0).getNodeName()); }This example removes all attributes by first making a copy of the attribute names and then using the list to remove the attributes: // Remove all the attributes of an element NamedNodeMap attrs = element.getAttributes(); String[] names = new String[attrs.getLength()]; for (int i=0; i<names.length; i++) { names[i] = attrs.item(i).getNodeName(); } for (int i=0; i<names.length; i++) { attrs.removeNamedItem(names[i]); }
e535. Adding and Removing an Attribute in a DOM Element e536. Listing All the Attributes of a DOM Element e538. Determining If an Attribute Was Supplied in a DOM Element
© 2002 Addison-Wesley. |