Я использую библиотеку poi для написания XML-файла с использованием преобразователя, и у меня есть следующие свойства sat:
java 1.8
//for output to file, console
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
//for pretty print
transformer.setOutputProperty(OutputKeys.DOCTYPE_PUBLIC, "yes"); //TODO
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.STANDALONE, "yes");
Но результат появляется с standalone = "no" ибез пробелов / отступов *
Результат:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<MainStruct>
<StringArray1 value="H1"/>
<StringArray1 value="H1"/>
<StringArray1 value="H1"/>
<StringArray1 value="H1"/>
<Table>
<IntVar1 value="1"/>
<StringVar1 value="String1"/>
<IntVar2 value="2"/>
<StringVar2 value="S"/>
</Table>
.
.
Ожидаемый:
<?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?>
<MainStruct>
<StringArray1 value="H1"/>
<StringArray1 value="H1"/>
<StringArray1 value="H1"/>
<StringArray1 value="H1"/>
<Table>
<IntVar1 value="1"/>
<StringVar1 value="String1"/>
<IntVar2 value="2"/>
<StringVar2 value="S"/>
</Table>
.
.