JSON例子一

MainActivity.java中核心代码

private String jsonData = "{\"name\":\"Michael\",\"age\":20}";

MainActivity.java
 1 import android.app.Activity; 2 import android.os.Bundle; 3 import android.view.View; 4 import android.view.View.OnClickListener; 5 import android.widget.Button; 6  7 public class MainActivity extends Activity { 8    private Button button = null; 9    private String jsonData = "{\"name\":\"Michael\",\"age\":20}";10 11     public void onCreate(Bundle savedInstanceState) {12         super.onCreate(savedInstanceState);13         setContentView(R.layout.main);14         button = (Button)findViewById(R.id.buttonId);15         button.setOnClickListener(new ButtonListener());16     }17     18     private class ButtonListener implements OnClickListener{       19         public void onClick(View v){20             JsonUtils jsonUtils = new JsonUtils();21             jsonUtils.pareseUserFromJson(jsonData);22         }23     }24     25     26 }

User.java
 1 public class User {     2     private String name; 3     private String age; 4  5     public String getName() { 6         return name; 7     } 8     public void setName(String name) { 9         this.name = name;10     }11     public String getAge() {12         return age;13     }14     public void setAge(String age) {15         this.age = age;16     }17 }

JsonUtils.java

import com.google.gson.Gson;public class JsonUtils {public void pareseUserFromJson(String jsonData){Gson gson = new Gson();//第一个参数是一个Json数据//第二个参数指定这个数据转换成哪个类的对象User user = gson.fromJson(jsonData, User.class);System.out.println("name--->" + user.getName());System.out.println("age--->" + user.getAge());}}

完整代码见下载 _19_json02.rar

  

JSON例子二

MainActivity.java中核心代码

private String jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]";

MainActivity.java
 1 public class MainActivity extends Activity { 2    private Button button = null; 3    private String jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]"; 4  5     public void onCreate(Bundle savedInstanceState) { 6         super.onCreate(savedInstanceState); 7         setContentView(R.layout.main); 8         button = (Button)findViewById(R.id.buttonId); 9         button.setOnClickListener(new ButtonListener());10     }11     12     private class ButtonListener implements OnClickListener{       13         public void onClick(View v){14             JsonUtils jsonUtils = new JsonUtils();15             jsonUtils.pareseUserFromJson(jsonData);16         }17     }18     19     20 }

User.java
 1 public class User {     2     private String name; 3     private String age; 4  5     public String getName() { 6         return name; 7     } 8     public void setName(String name) { 9         this.name = name;10     }11     public String getAge() {12         return age;13     }14     public void setAge(String age) {15         this.age = age;16     }17 }

JsonUtils.java

/** * 但如果要把JSON数组转换成一系列的User对象,那要怎么做? * */public class JsonUtils {public void pareseUserFromJson(String jsonData){ //此处TypeToken<LinkedList<User>>(){}为何有个大括号,因为他是个接口,但又没有要实现的类Type listType = new TypeToken<LinkedList<User>>(){}.getType();Gson gson = new Gson();//LinkedList 增删操作较多而查询操作很少的情况下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());}}}

  

完整代码见下载 _19_json03.rar

更多相关文章

  1. Android实用代码七段(四)
  2. CentOS7上编译Android系统
  3. Android(安卓)近百个项目的源代码,覆盖Android开发的每个领域
  4. 【stagefrightplayer】1 调用过程
  5. ubuntu10.10下的android源码下载及编译
  6. Android(安卓)alertdialog的按钮点击后不消失
  7. Android(安卓)开发笔记1 (MTK)
  8. js代码
  9. Android(安卓)高效的SQLite型数据库greenDAO使用

随机推荐

  1. Mysql无法选取非聚合列的解决方法
  2. mysql的定时任务实例教程
  3. MySQL分页Limit的优化过程实战
  4. mysql增量备份及断点恢复脚本实例
  5. 在golang中操作mysql数据库的实现代码
  6. centos7.4系统中yum源安装mysql 5.6
  7. Navicat修改MySQL数据库密码的多种方法
  8. 详解 Mysql中的delimiter定义及作用
  9. mysql server 8.0.3安装配置方法图文教程
  10. mysql 8.0.12 winx64下载安装教程