Есть ли способ распечатать пустые элементы, такие как <tag></tag>
, а не <tag />
, используя org.w3c.dom? Я изменяю XML-файлы, которые необходимо проанализировать для старых версий для просмотра.Распечатать пустой элемент XML как открывающий тег, закрывающий тег
Если это поможет, то код, который записывает XML в файл:
TransformerFactory t = TransformerFactory.newInstance();
Transformer transformer = t.newTransformer();
DOMSource source = new DOMSource(doc);
StringWriter xml = new StringWriter();
StreamResult result = new StreamResult(xml);
transformer.transform(source, result);
File f = new File("output.xml");
FileWriter writer = new FileWriter(f);
BufferedWriter out = new BufferedWriter(writer);
out.write(xml.toString());
out.close();
Спасибо.
Проблема заключается в том, что XML-файлы выводятся в этом формате из используемой нами программы проектирования, поэтому они изменяются как вручную, так и этой программой, а теперь и мой скрипт. Таким образом, мы должны запускать их через конвертер Canonical XML каждый раз, не так ли? Это по-прежнему выглядит полезным - я собираюсь изучить его больше и отметить вас как принятый ответ - спасибо! –
Да. Скопируйте каждый файл, сделайте это каждый раз на каждой копии, а затем сравните. Отличный кандидат на сценарий, если я когда-либо видел его :) –