works what used results how for does android xml json libraries
java-json.jar

android - what - json tags



Convertir XML a objeto JSON en Android (5)

Acabo de lanzar una biblioteca "XML to JSON" para Android Studio. Es fácil de integrar con Gradle, fácil de usar y configurable.

XmlToJson está disponible en GitHub:

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

¡disfrutar!

Tengo una cadena XML como se muestra a continuación:

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

¿Es posible convertir XML a JSON?


Le sugeriría usar json-lib , una biblioteca que agrega JSON support to any Java program . json-lib puede tomar XML y convertirlo en un objeto JSON.

Puedes obtener json-lib here

P.ej.

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


Puede convertir xml a objetos jackson, y luego puede usar jackson json.

He intentado agregar el soporte XmlPull a jackson xml. Encuentra el proyecto bifurcado aquí:

https://github.com/finvu/jackson-dataformat-xml

Actualmente, solo es compatible con la versión 2.9.6. (clona la rama jackson-dataformat-xml-2.9.6-XmlPull)

Lo siento, no puedo proporcionar documentación detallada debido a limitaciones de tiempo. Si tienes conocimientos de git y maven para extraer una rama específica y construir el tarro, entonces debería ser relativamente fácil.

La documentación de Jackson xml se puede encontrar en la página de inicio de jackson xml git aquí:

https://github.com/finvu/jackson-dataformat-xml/tree/jackson-dataformat-xml-2.9.6-XmlPull


Puedes intentarlo de esta manera también. Lo he probado y probado yo mismo.

Paso 1: Por favor descarga el java-json.jar

Paso 2: agregue esto a la carpeta /libs de su proyecto y luego agregue a la ruta de compilación.

Paso 3: entonces utilízalo como sigue

  • Importaciones a buscar

    import org.json.JSONException; import org.json.JSONObject; import org.json.XML;

  • Cadena de muestra

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

  • Json String

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

Salida:

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"}}


Underscore-java tiene el método estático U.xmlToJson (xml). Soy el mantenedor del proyecto. Ejemplo vivo

import com.github.underscore.lodash.U; U.xmlToJson("<a>/n <b></b>/n <b></b>/n</a>");