2016-09-21 42 views
5

我正在寻找一种方法将Java中的XML转换为JSON,使得子节点将总是转换为数组。 在Node.js中有库XmlToJs在Java中将XML转换为JSON并将子节点作为数组

使用情况是,当我有一个像XML如下:

XML:

<A> 
    <B> 
    <C>data</C> 
    </B> 
    <B> 
    <C>data1</C> 
    <C>data2</C> 
    </B> 
</A> 

JSON与org.json转换:

{ 
    "A": { 
     "B": [{ 
      "C": "data" 
     }, { 
      "C": ["data1", "data2"] 
     }] 
    } 
} 

什么,我想在转换到产量:

{ 
    "A": { 
     "B": [{ 
      "C": ["data"] 
     }, { 
      "C": ["data1", "data2"] 
     }] 
    } 
} 

回答

0

可以完成上面的操作,但可能不是直接的,即XML - > JSON,一种方法是具有数据模型的中间对象表示,然后是XML - >数据模型 - > JSON。 XML->数据模型可以通过JAXB提供商在所需的结构中实现,一旦数据位于模型中,您可以将其序列化为JSON

+0

但是如果我不知道xml的模式怎么办。它应该在每种类型的XML输入上运行 –