import org.dom4j.Element; //導入方法依賴的package包/類
protected void writeElement(Element element) throws IOException {
int size = element.nodeCount();
String qualifiedName = element.getQualifiedName();
writePrintln();
indent();
writer.write(”
writer.write(qualifiedName);
boolean textOnly = true;
for (int i = 0; i < size; i++) {
Node node = element.node(i);
if (node instanceof Element) {
textOnly = false;
} else if (node instanceof Comment) {
textOnly = false;
}
}
writeAttributes(element);
lastOutputNodeType = Node.ELEMENT_NODE;
if (size <= 0) {
writeEmptyElementClose(qualifiedName);
} else {
writer.write(“>”);
if (textOnly) {
// we have at least one text node so lets assume
// that its non-empty
writeElementContent(element);
} else {
if (element.attributeCount() > 3)
writePrintln();
// we know it’s not null or empty from above
++indentLevel;
writeElementContent(element);
–indentLevel;
writePrintln();
indent();
}
writer.write(“”);
writer.write(qualifiedName);
writer.write(“>”);
}
if (element.attributeCount() > 2 && indentLevel > 0)
writePrintln();
lastOutputNodeType = Node.ELEMENT_NODE;
}