zoukankan      html  css  js  c++  java
  • ANDROID_MARS学习笔记_S02_013_Gson解析json串

    1.MainActivity.java

     1 package com.json;
     2 
     3 import java.io.IOException;
     4 import java.io.StringReader;
     5 
     6 import android.annotation.SuppressLint;
     7 import android.app.Activity;
     8 import android.os.Bundle;
     9 import android.util.JsonReader;
    10 import android.view.View;
    11 import android.view.View.OnClickListener;
    12 import android.widget.Button;
    13 
    14 public class MainActivity extends Activity {
    15 
    16 
    17 
    18     private String jsonData = "[{"name":"Michael","age":20},{"name":"Mike","age":21}]";
    19     private Button button ;
    20     
    21     @Override
    22     protected void onCreate(Bundle savedInstanceState) {
    23         super.onCreate(savedInstanceState);
    24         setContentView(R.layout.activity_main);
    25         button = (Button)findViewById(R.id.buttonId);
    26         button.setOnClickListener(new OnClickListener() {
    27             @Override
    28             public void onClick(View v) {
    29                 JsonUtils jsonUtils = new JsonUtils();
    30                 jsonUtils.parseJson(jsonData);
    31             }
    32         });
    33     }
    34     
    35     class JsonUtils {
    36         @SuppressLint("NewApi")
    37         public void parseJson(String jsonData) {
    38             JsonReader reader = new JsonReader(new StringReader(jsonData));
    39             try {
    40                 reader.beginArray();//开始解析数组
    41                 while (reader.hasNext()) {
    42                     reader.beginObject();//开始解析对象
    43                     while (reader.hasNext()) {//开始解析键值对
    44                         String tagName = reader.nextName();
    45                         if(tagName.equals("name")) {
    46                             System.out.println("name-->" + reader.nextString());
    47                         } 
    48                         else if(tagName.equals("age")) {
    49                             System.out.println("age--->" + reader.nextInt());
    50                         }
    51                     }
    52                     reader.endObject();
    53                 }
    54                 reader.endArray();
    55             } catch (IOException e) {
    56                 e.printStackTrace();
    57             }
    58         }
    59     }
    60 }
  • 相关阅读:
    一段获取windows环境变量的代码
    尝试word2007的blog发布
    如何求一表所有行所有字段实际占用的空间
    如何查询全表扫描SQL
    Oracle 33个等待事件
    如何使用RMAN
    如何使用Diagnostics工具监控应用服务器
    如何查询每行数据的数据块信息
    如何理解recursive calls,db block gets和consistent gets
    如何编写批处理与SQLPLUS(例子)
  • 原文地址:https://www.cnblogs.com/shamgod/p/5202260.html
Copyright © 2011-2022 走看看