Это актуально в зависимости от способа написания документа в файле и не имеет ничего общего с самим DOM. В следующем примере используется популярный Transformer на основе подхода:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
Document document = factory.newDocumentBuilder().newDocument();
Element element = document.createElement("tag");
document.appendChild(element);
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.METHOD, "html");
DOMSource source = new DOMSource(document);
StreamResult result = new StreamResult(System.out);
transformer.transform(source, result);
Он выводит <tag></tag>
, как вы ожидаете. Обратите внимание, что изменение метода вывода имеет другие побочные эффекты, такие как отсутствие объявления XML.
см. Transformer.setOutputProperty (OutputKeys.METHOD, "html"); –