JAXB格式化

JAXB格式化

123人阅读 评论(0) 收藏 举报
JAXBContext jc  =  JAXBContext.newInstance(  " com.acme.foo "  );
Unmarshaller u 
=  jc.createUnmarshaller();
Object element 
=  u.unmarshal(  new  File(  " foo.xml "  ) );
Marshaller m 
=  jc.createMarshaller();
OutputStream os 
=   new  FileOutputStream(  " nosferatu.xml "  );
m.marshal( element, os );

以上是JDK1.6API给的代码,但生成的Xml文件是未被格式化的,要怎么样才能对生成的XML文件格式化呢,

jaxb.formatted.output:值必须是 java.lang.Boolean 
此属性控制 Marshaller 是否使用换行和缩排对得到的 XML 数据进行格式化。此属性为 
true  值表示可读性强的缩排 xml 数据,而属性值为  false  则表示未格式化的 xml 数据。如果未指定此属性,则 Marshaller 将该属性值默认为  false (未格式化)。 

这是API中的解释,只要把jaxb.formatted.output属性赋成True就可以了

 

m.setProperty(m.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);

上上面这个句话就要可以了

 

你可能感兴趣的:(JAXB格式化)