2013-10-04 24 views
1

我用org.json將XML轉換成JSON在Java代碼中的一個選項:XML到JSON有數組與一個元素

JSONObject jSONObject = org.json.XML.toJSONObject(StringXML); 

的問題org.json庫是他們不接受數組有一個元素,所以我很難用jQuery的數據表讀取JSON。 (元素周圍沒有支架)

所以,我想切換到傑克遜,因爲我發現了它有它的一個選項:

ObjectMapper mapper = new ObjectMapper() 
     .enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY); 

但是,當我引進國外最新庫(核心:2.2 .3,dataformat-xml:2.2.0),DeserializationFeature類不可用。

有什麼辦法可以將XML字符串轉換爲JSON,並且只有一個元素的數組有選項嗎?

回答

0

我已經使用staxon API將XML從XML轉換爲JSON。

import de.odysseus.staxon.json.JsonXMLConfig; 
import de.odysseus.staxon.json.JsonXMLConfigBuilder; 
import de.odysseus.staxon.json.JsonXMLInputFactory; 

InputStream input = new FileInputStream(fileIn); // XML file input 
OutputStream output = new FileOutputStream(fileOut); // JSON output file 

JsonXMLConfig config = new JsonXMLConfigBuilder().multiplePI(false).build(); 
XMLEventReader reader = new JsonXMLInputFactory(config) 
          .createXMLEventReader(input); 
XMLEventWriter writer = XMLOutputFactory.newInstance() 
          .createXMLEventWriter(output); 

here下載API。

你可以試試看。

+0

StAXON文檔和下載:https://github.com/beckchr/staxon/wiki – chris

+0

是否可以輸入和輸出字符串而不是FileInputStream和FileOutputStream?我無法在API中找到它。 – baris

+0

是的,使用'StringReader'和'StringWriter' – chris

相關問題