【发布时间】:2018-09-26 05:50:24
【问题描述】:
这是我第一次使用 stackoverflow,我的英语说得不太好,所以请客气。
我在这样的附加模式下使用 Jaxb
for (Document330 document : documents){
JAXBContext jContext = JAXBContext.newInstance(Document330Xml.class);
Marshaller m = jContext.createMarshaller();
m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
m.marshal(document, fos);
}
我有一个这样的输出文件:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DOCUMENT>
<MAILING>
<REF>M584</REF>
<LIBELLE>Mail Test 1</LIBELLE>
</MAILING>
</DOCUMENT>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DOCUMENT>
<MAILING>
<REF>M585</REF>
<LIBELLE>Mail Test 2</LIBELLE>
</MAILING>
</DOCUMENT>
但我想要这样的东西:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DOCUMENTS>
<DOCUMENT>
<MAILING>
<REF>M584</REF>
<LIBELLE>Mail Test 1</LIBELLE>
</MAILING>
</DOCUMENT>
<DOCUMENT>
<MAILING>
<REF>M585</REF>
<LIBELLE>Mail Test 2</LIBELLE>
</MAILING>
</DOCUMENT>
</DOCUMENTS>
但有可能我有很多 XML。所以我不认为 Unmarshaller 是最好的解决方案
感谢阅读
【问题讨论】:
-
您只需将多个
Strings 写入同一个输出流。您尝试将这 2 个DOCUMENTs 包装在DOCUMENTS标记中是什么?