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);

上上面這個句話就要可以了

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章