`

解析Json和xml数据

 
阅读更多

解析xml数据

private void parseXMLWithPull(String xmlData) {
    try {
        XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
        XmlPullParser xmlPullParser = factory.newPullParser();
        xmlPullParser.setInput(new StringReader(xmlData));
        int eventType = xmlPullParser.getEventType();
        String id = "";
        String name = "";
        String version = "";
        while (eventType != XmlPullParser.END_DOCUMENT) {
            String nodeName = xmlPullParser.getName();
            switch (eventType) {
                // 开始解析某个结点
case XmlPullParser.START_TAG: {
                    if ("id".equals(nodeName)) {
                        id = xmlPullParser.nextText();
                    } else if ("name".equals(nodeName)) {
                        name = xmlPullParser.nextText();
                    } else if ("version".equals(nodeName)) {
                        version = xmlPullParser.nextText();
                    }
                    break;
                }
                // 完成解析某个结点
case XmlPullParser.END_TAG: {
                    if ("app".equals(nodeName)) {
                        Log.d("MainActivity", "id is " + id);
                        Log.d("MainActivity", "name is " + name);
                        Log.d("MainActivity", "version is " + version);
                    }
                    break;
                }
                default:
                    break;
            }
            eventType = xmlPullParser.next();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

private void parseXMLWithSAX(String xmlData) {
    try {
        SAXParserFactory factory = SAXParserFactory.newInstance();
        XMLReader xmlReader = factory.newSAXParser().getXMLReader();
        ContentHandler handler = new ContentHandler();
        // 将ContentHandler的实例设置到XMLReader中
xmlReader.setContentHandler(handler);
        // 开始执行解析
xmlReader.parse(new InputSource(new StringReader(xmlData)));
    } catch (Exception e) {
        e.printStackTrace();
    }
}

 

解析Json数据


private void parseJSONWithJSONObject(String jsonData) {
    try {
        JSONArray jsonArray = new JSONArray(jsonData);
        for (int i = 0; i < jsonArray.length(); i++) {
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            String id = jsonObject.getString("id");
            String name = jsonObject.getString("name");
            String version = jsonObject.getString("version");
            Log.d("MainActivity", "id is " + id);
            Log.d("MainActivity", "name is " + name);
            Log.d("MainActivity", "version is " + version);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}


//使用Gson之前要先创建一个JavaBean
private void parseJSONWithGSON(String jsonData) {
    Gson gson = new Gson();
    List<App> appList = gson.fromJson(jsonData, new TypeToken<List<App>>() {}.getType());
    for (App app : appList) {
        Log.d("MainActivity", "id is " + app.getId());
        Log.d("MainActivity", "name is " + app.getName());
        Log.d("MainActivity", "version is " + app.getVersion());
    }
}

 

  • 大小: 25.9 KB
分享到:
评论

相关推荐

    Jquery解析JSON和XML示例

    本文将详细讲解如何使用jQuery解析JSON和XML数据,通过给出的文件名称,我们可以推测这是一个关于Web应用中添加账户和应用的场景。 首先,让我们来看看JSON(JavaScript Object Notation)和XML(eXtensible Markup...

    Json和xml的数据解析

    在iOS开发中,处理JSON和XML数据解析是非常常见的任务。Xcode提供了内置的JSON解析支持,如NSJSONSerialization类,可以方便地将JSON字符串转换为Foundation对象,如NSDictionary和NSArray。例如: ```swift if let...

    VB解析Json转换为Xml

    在VB.NET中,可以使用内置的System.Web.Script.Serialization命名空间中的JavaScriptSerializer类来解析Json。以下是一个简单的步骤: 1. 引入命名空间: ```vb Imports System.Web.Script.Serialization ``` 2...

    okHttp访问返回JSON,XML解析实例

    本篇将详细讲解如何使用OkHttp进行网络访问,并解析返回的JSON与XML数据。 首先,我们需要了解OkHttp的基本用法。OkHttp是一个异步的HTTP客户端,它通过减少网络延迟和内存使用来提高性能。创建一个OkHttpClient...

    Json和XML解析demo

    在给定的文件列表中,"News web端.rar"可能包含了关于Web应用中JSON数据处理的示例代码,而"XmlClient.rar"则可能包含XML数据的客户端解析和处理方法。这些资源可以帮助开发者理解如何在实际项目中使用JSON和XML进行...

    json和xml互转

    JSON(JavaScript Object Notation)和XML(eXtensible Markup Language)是两种广泛使用的数据交换格式,它们在互联网上用于传递和存储结构化数据。JSON以其简洁、易读的特性受到开发者喜爱,而XML则以其丰富的结构...

    老罗JSON&XML数据解析

    他可能涵盖了从基本概念到实际代码实现的全过程,包括创建JSON和XML数据、序列化和反序列化,以及在服务器和客户端之间进行数据交互的示例。 **服务器与客户端交互** 在服务器和客户端之间,数据通常是通过HTTP协议...

    Volley获取json和xml数据解析显示

    5. **解析JSON数据**:在onResponse方法中,可以使用Gson或者org.json库解析JSON对象,然后更新UI。 对于XML数据,我们可以使用Volley的XmlRequest,步骤类似,只是需要创建的是`XmlRequest`对象,解析时使用如`...

    json和xml比较

    JSON 和 XML 是两种常用的数据交换格式,它们之间有很多相似之处,也有许多不同之处。下面我们将从多方面对比 JSON 和 XML。 可读性和可扩展性 JSON 和 XML 都是文本表示的数据格式,可以跨平台、跨系统交换数据。...

    Delphi Json/XML 解析类

    本文将深入探讨Delphi中用于解析JSON和XML的类,以及如何使用它们。 首先,我们来看JSON(JavaScript Object Notation)解析。JSON是一种轻量级的数据交换格式,因其易于人阅读和编写,同时也易于机器解析和生成,...

    jquery.json2xml.js和jquery.xml2json.js

    这两个脚本都简化了在JavaScript中处理JSON和XML的流程,使得开发人员能够在不同的数据格式之间灵活切换,而无需手动进行复杂的解析和序列化工作。 **使用场景** 1. **数据交换**:当客户端和服务器之间的接口需要...

    js下xml转json和json转xml

    XML到JSON的转换通常是为了简化数据处理,因为JSON更易于在JavaScript中解析和操作。以下是一些主要的步骤和概念: 1. **解析XML**:首先,我们需要解析XML文档,这可以通过`DOMParser`对象实现。它能将XML字符串...

    Json和Xml离线格式化工具

    "Json和Xml离线格式化工具"是针对这两种格式的解析和美化工具,可以在没有网络连接的情况下对JSON和XML数据进行格式化,使得数据更易于阅读和理解。 JSON格式化工具通常包含以下功能: 1. **代码高亮**:为键值对和...

    kettle解析json串

    根据提供的信息,我们可以深入探讨如何在Kettle中解析JSON串,并连接数据库进行数据处理。本文将详细介绍使用Java库解析JSON的基本方法以及如何在Kettle环境中实现这一过程。 ### Kettle与JSON解析概述 #### 1. **...

    notepad++ Json和Xml数据格式化插件

    在日常开发中,有效地格式化Json和Xml数据至关重要,因为这不仅能让开发者更容易理解数据结构,还能帮助找出潜在的错误。Notepad++的这个插件为开发者提供了一个高效、便捷的工具,提高了工作效率。因此,如果你经常...

    Json、XML解析

    解析JSON和XML的方式有很多种,下面分别介绍: 1. JSON解析: - JavaScript中,由于JSON源自JavaScript,因此可以使用`JSON.parse()`方法直接将JSON字符串转换为JavaScript对象。 - 在Python中,可以使用`json`...

    C++结构体和json/xml之间互相转换

    在现代软件开发中,数据交换通常涉及JSON(JavaScript Object Notation)和XML(eXtensible Markup Language)这两种格式,它们是网络传输数据的标准格式。JSON因其简洁和易读性而广泛应用于API接口,而XML则在更...

    json 解析 xml

    1. **解析JSON** - `org.json`库:Android SDK内置了`org.json`库,提供了`JSONObject`和`JSONArray`类来处理JSON。例如,可以使用`JSONObject.getString()`、`JSONObject.getInt()`等方法获取JSON对象的值。 - `...

    json和xml互转.jar

    开发者可以输入JSON字符串,该程序会解析JSON并生成对应的XML字符串;同样,也可以输入XML字符串,程序将其解析并转化为等效的JSON格式。这种转换对于那些需要在使用JSON的应用和使用XML的应用之间传递数据的开发者...

    json和xml格式数据的解析(java代码+相关的jar包)

    JSON(JavaScript Object Notation)和XML(eXtensible Markup Language)是两种广泛使用的数据交换格式,它们在Web服务和应用程序之间传输数据时起到关键作用。本文将深入探讨这两种格式,以及如何使用Java来解析...

Global site tag (gtag.js) - Google Analytics