`
侯上校
  • 浏览: 223499 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Android JSON数据解析实例

阅读更多

三种方法:

   private String jsonData1 = "[{\"name\":\"tom\",\"age\":\"20\"},{\"name\":\"lily\",\"age\":\"21\"}]";

    1。解析方法

 public void parseJson(String jsonData){
  
   try {
    //如果需要解析JSON数据,首先要生成JsonReader对象
    JsonReader reader = new JsonReader(new StringReader(jsonData));
    /**
     * 1.现在开始解析一个数组
     * 2.开始解析对象
     * 3.解析键值对
     * 4.解析键值对
     * 5.解析对象结束
     * 6。开始解析对象
     * 7.解析键值对
     * 8.解析键值对
     * 9.解析对象结束
     * 10.解析数组结束
     */
     reader.beginArray();
     while(reader.hasNext()){//有没有下一个
           reader.beginObject();
           while(reader.hasNext()){//判断有没有键值对
                  String tagname = reader.nextName();
                  if(tagname.equals("name")){
                           System.out.println("name=------>" + reader.nextString());
                   }else if(tagname.equals("age")){
                            System.out.println("age--->" + reader.nextInt());
                   }
     
            }
            reader.endObject();
       }
       reader.endArray();
    } catch (IOException e) {
          e.printStackTrace();
    }
  }

 解析方法二:

public void parseJson(String jsonData){
          System.out.println(jsonData);
          Gson gson = new Gson();
          User user = gson.fromJson(jsonData, User.class);
          System.out.println("name----->" + user.getName());
          System.out.println("age----->" + user.getAge());
 }

、、这种只能解析对象,不可以解析数组的

  解析方法三:

  import java.lang.reflect.Type;
  import java.util.Iterator;
  import java.util.LinkedList;

  import com.google.gson.Gson;
  import com.google.gson.reflect.TypeToken;


  public class JsonUtilsArray {
            public void parseJson(String jsonData){
                    System.out.println(jsonData);
                    Type listType = new TypeToken<LinkedList<User>>(){}.getType();
                    Gson gson = new Gson();
                    LinkedList<User> users= gson.fromJson(jsonData, listType);
                    for (Iterator iterator = users.iterator(); iterator.hasNext();) {
                                User user = (User) iterator.next();
                                System.out.println("name----->" + user.getName());
                                System.out.println("age----->" + user.getAge());
                     }
             }
  }

 

分享到:
评论

相关推荐

    Android_JSON数据解析

    Retrofit是另一种流行的Android网络库,它允许更优雅地处理网络请求和响应,包括JSON解析。添加依赖: ```groovy implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation '...

    android之json和gson数据解析最完整的代码例子(包括各种样式的json数据)

    二、Android中的JSON解析 在Android中,我们通常使用`org.json`库或`com.google.gson`库来解析JSON数据。 1. `org.json`库:这是Android SDK自带的一个轻量级库,主要用于解析简单的JSON数据。 - JSONObject:...

    android采用json解析数据的实例

    综上所述,"android采用json解析数据的实例"涵盖了从网络请求JSON数据、解析JSON、到将数据绑定到UI的全过程。学习这个实例有助于开发者深入理解Android中如何有效地处理网络数据,提高应用的用户体验。在实际开发中...

    android 动态解析获取json数据的键值对

    这个"android 动态解析获取json数据的键值对"的项目就是针对这种情况的一个实例,主要展示了如何在Eclipse环境下,不预先创建JSON键值对应的实体类,而是动态地解析JSON并将其内容显示在列表上。 首先,我们要理解...

    Android 实用的数据json数据解析封装类

    对于Android开发者来说,理解和熟练掌握JSON解析至关重要。本篇文章将详细介绍如何创建一个实用的JSON数据解析封装类,以便快速有效地处理各种形式的JSON数据。 首先,我们需要引入一个JSON库,Android SDK本身包含...

    android针对json数据解析方法实例分析

    总的来说,理解Android中的JSON解析机制是移动开发中的必备技能。无论是简单的键值对还是复杂的嵌套结构,`org.json`包都能提供有效的工具来处理JSON数据,使应用程序能够流畅地与服务器进行数据交换。

    android json数据下载与解析demo

    这个“android json数据下载与解析demo”涵盖了Android开发中的多个重要概念,包括网络请求、JSON解析、异步操作以及数据展示。通过学习和实践这个示例,开发者可以更好地理解和掌握Android应用中与网络交互和数据...

    android中JSON数据解析

    本篇将深入探讨如何在Android中解析JSON数据。 首先,我们需要了解JSON的基本结构。JSON数据可以表示为对象或数组,对象由键值对组成,用花括号{}包围,键和值之间用冒号隔开,多个键值对用逗号分隔;数组是一系列...

    android解析Json数据

    总结,Android平台下的JSON解析主要依靠org.json库中的JSONObject和JSONArray类。理解这些基本操作,开发者能够方便地处理从服务器获取的JSON数据,将其转化为应用程序可操作的对象,从而实现数据的展示和交互。在...

    android原生JSON解析实例

    下面通过实例来详细分析 Android 原生 JSON 解析的过程。 JSONObject 和 JSONArray 在 Android 中,JSONObject 和 JSONArray 是两个重要的类,用于封装 JSON 数据。JSONObject 封装单个对象的数据,而 JSONArray ...

    android json 解析jar

    Android JSON解析jar指的是在Android项目中用于解析JSON数据的Java库,通常以.jar文件形式提供。 本主题主要关注的是`gson`库,这是一个由Google提供的强大JSON库,它允许将Java对象转换为JSON字符串,以及将JSON...

    Android Studio下使用Google Gson解析Json数据示例

    2. 使用Gson实例解析JSON:有了JSON字符串和对应的数据模型类,我们可以使用Gson的fromJson()方法将JSON转换为Java对象。 ```java String jsonString = "{\"name\":\"John Doe\",\"age\":30,\"city\":\"New York\"}...

    Android json数据解析详解及实例代码

    总的来说,Android中的JSON解析主要依赖于org.json库提供的`JSONObject`和`JSONArray`类。通过这些类,我们可以方便地读取、写入和操作JSON数据。理解并熟练运用这些方法,能够有效地处理服务器返回的JSON数据,从而...

    Android读取JSON实例

    总的来说,Android读取JSON涉及网络请求、JSON解析和UI更新等步骤。通过熟练掌握这些技能,你可以构建出能够与服务器高效交互的应用。在实际项目中,你可能还需要考虑性能优化、错误处理和数据缓存等问题,以提供更...

    android demo,json数据的处理,json字符串的发送和解析。

    这个“android demo”显然是一个展示如何在Android平台上处理JSON数据、发送JSON字符串以及进行JSON解析的示例项目。下面将详细阐述相关知识点。 一、JSON基础知识 1. JSON格式:JSON采用键值对的形式存储数据,键...

    Android Studio解析JSON对象

    本主题聚焦于“Android Studio解析JSON对象”,这是一个非常关键且实用的技能,因为JSON作为一种轻量级的数据交换格式,广泛应用于网络通信和数据存储。JSON对象可以方便地表示各种复杂的数据结构,包括数组、键值...

    Android处理JSON数据-JSON数据解析.pdf

    本篇文章主要探讨了如何在Android环境中解析JSON数据,包括JSON Object、JSON Array以及两者混合对象的解析方法。 1. **解析JSON Object**: JSON Object由一组键值对组成,以大括号`{}`包围。例如,`{"name":...

    Gson解析复杂Json实例,超简单

    本教程将深入探讨如何使用Gson库解析复杂的JSON实例,让你只需寥寥几行代码就能轻松处理JSON解析问题。 ### Gson库简介 Gson库的核心功能是将Java对象(如自定义类)转换为JSON字符串,反之亦然。这个库非常直观,...

    Android 的 JSON解析源码

    1. `org.json`库:Android SDK自带的JSON解析库,提供了`JSONObject`和`JSONArray`类,支持创建、读取和修改JSON数据。例如: ```java JSONObject jsonObject = new JSONObject(); jsonObject.put("name", "John"); ...

    android 利用socket 发送Json数据demo

    在Android开发中,利用Socket发送Json数据是一种常见的网络通信方式,尤其在移动应用与服务器进行实时交互时。本文将深入探讨如何在Android中实现这一功能,包括Json数据格式的使用、Socket通信的基本原理以及实际的...

Global site tag (gtag.js) - Google Analytics