在Android中将XML转换为JSON对象

我有一个XMLstring,如下所示:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><Response xmlns="http://tempuri.org/"><UserResult><Users xmlns=""><User> <Message>Success</Message> <UserId>213213213</UserId> <FullName>Abc</FullName> <Roles> <Role> <RoleId>23232333</RoleId> <RoleName>Salesperson</RoleName> </Role> </Roles> </User> </Users> </UserResult></Response> </s:Body> </s:Envelope> 

是否有可能将XML转换为JSON?

  • Android 3.1中可调整的appwidgets
  • 如何在清单文件中注册应用程序类?
  • 错误:在'android'包中找不到属性'textAlignment'的资源标识符
  • 如何在Android中的xml中为string资源指定空值?
  • 如何设置阿尔法/不透明度值在XML可绘制的颜色?
  • android:从string数组中获取项目并在文本视图中逐一显示
  • strings.xml中的“消息描述未find”警告
  • 如何在android中设置开关小部件的默认值
  • 你也可以尝试这种方式。 我已经尝试过,自己testing了一下。

    第1步:请下载java-json.jar

    步骤2:将其添加到项目的/libs文件夹,然后添加到构buildpath。

    第3步:然后使用它如下

    • import来寻找

       import org.json.JSONException; import org.json.JSONObject; import org.json.XML; 
    • 示例string

       String sampleXml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<mobilegate>" +"<timestamp>232423423423</timestamp>" + "<txn>" + "Transaction" + "</txn>" + "<amt>" + 0 + "</amt>" + "</mobilegate>"; 
    • Jsonstring

       JSONObject jsonObj = null; try { jsonObj = XML.toJSONObject(sampleXml); } catch (JSONException e) { Log.e("JSON exception", e.getMessage()); e.printStackTrace(); } Log.d("XML", sampleXml); Log.d("JSON", jsonObj.toString()); 

    输出:

    XML:

    <?xml version="1.0" encoding="utf-8"?><mobilegate><timestamp>232423423423</timestamp><txn>Transaction</txn><amt>0</amt></mobilegate>

    JSON:

    {"mobilegate":{"timestamp":232423423423,"amt":0,"txn":"Transaction"}}

    我build议你使用json-lib ,这是一个JSON support to any Java program添加JSON support to any Java program的库。 json-lib可以把XML转换成一个JSON对象。

    你可以在这里得到json-lib

    例如。

     String xml = "your xml string"; XMLSerializer xmlSerializer = new XMLSerializer(); JSON json = xmlSerializer.read( xml ); 

    我刚刚为Android Studio发布了一个“XML to JSON”库。 使用gradle很容易,易于使用和configuration。

    XmlToJson在GitHub上可用:

    https://github.com/smart-fun/XmlToJson

    请享用!