用google-gson来解析json,jar包附件中
方法1:
import java.io.StringReader; import com.google.gson.stream.JsonReader; public class JsonUtils { public void parseJson(String jsonData){ try{ //如果需要解析JSON数据,首要要生成一个JsonReader对象 JsonReader reader = new JsonReader(new StringReader(jsonData)); 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(Exception e){ e.printStackTrace(); } } } json就是字符串: String jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]";
方法2.1:把json转化为java对象(单个对象!)
要转化成的对象:
public class User { private String name ; private int age ; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
解析:
import com.google.gson.Gson; public class JsonUtils { public void parseUserFromJson(String jsonData){ Gson gson = new Gson(); User user = gson.fromJson(jsonData, User.class); System.out.println("name--->" + user.getName()); System.out.println("age---->" + user.getAge()); } }
其中String jsonData = "{\"name\":\"Michael\",\"age\":20}";
方法2.2:把json转化为java对象数组!
1.要转化成的对象还是上面的User类对象。
2.解析;
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 JsonUtils { public void parseUserFromJson(String 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()); } } }
其中String jsonData = "[{\"name\":\"Michael\",\"age\":20},{\"name\":\"Mike\",\"age\":21}]";
相关推荐
本着探究 JSON 原理的目的,我将会在这DEMO中实现了一个简单的JSON解析器。由于 JSON 本身比较简单,解析起来也并不复杂。所以如果大家感兴趣的话,在看完本DEMO后,不妨自己动手实现一个 JSON 解析器。
简单的json解析及httpclient3.1免证书认证
自己写的json解析,不使用第三方的jar包,简单易懂,分为本地json解析和online json解析,网上的只需要修改一下url地址即可
简单json解析,httpclient免证书校验
Json解析,Gson解析,本地,网络解析简单的案例
最简单最高效的Json解析,快捷小巧方便简洁
这是一款windows版绿色的离线json解析工具,还在担心json格式化吗?简单易用。完全绿色,不需要安装。离线即可将json数据进行格式化。且自动去除数据中字段为null的字段
关于java json解析的简单测试,简单示例
json解析_简单的练习, 有代码和效果图片
利用GSON可以解析复杂的JSON数据,这个是一个很具体的例子,详细说明
简单方便的json解析工具,是你更直观的看json数据
android json解析demo,简单粗暴
一个简单有可容易明白的json解析的方法
实现 json简单解析,通过第三方的框架。
windows下json离线解析工具,无需安装。使用简单功能强大。
json格式转化函数 博文链接:https://flym.iteye.com/blog/141590
一个简单的对json的解析 demo ,有道的是json.jar 文件
这里进行介绍Gson解析复杂Json和简单Json的数据方式
Delphi XE + IdHTTPServer + utf8转换 + json解析(源码+测试可用)
自定义对象解析json,简单快捷;自定义对象解析json,简单快捷;自定义对象解析json,简单快捷;自定义对象解析json,简单快捷;