使用XMLSerializer()方式转成json的问题

引入XMLSerializer之后,通过JSON respJson = new XMLSerializer().read(responseXml);方法将xml转换成json字符串。
这种方法虽然简单但是有个很大的缺陷
当一个节点下只有一个节点的时候,利用XMLSerializer()去解析的时候就程序无法识别它是一个list还是一个单节点。

a、报文xml:

<Response>
	<DateTime>1516155816683</DateTime>
	<Content>
		<retCode>0</retCode>
	</Content>
</Response>

解析json:
{"DateTime":"1516155816683","Content":["0"]}

b、报文xml

<Response>
<Datetime>1516155816683</Datetime>
<Content>
    <return>
        <retCode>0</retCode>
        <retMsg>success</retMsg>
    </return>
</Content> 
</Response>

解析json
{"Datetime":"1516155816683","Content":[{"retCode":"0","retMsg":"success"}]}

猜你喜欢

转载自blog.csdn.net/It_sharp/article/details/85164130