java 解析json格式数据
有时候可能会用到json格式进行数据的传输,那么怎么把接收到的数据解析出来呢? 下面介绍两种解析json数据的方法:
1、通过谷歌的Gson来进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
两个VO类:
- public class SurveyVO {
- private String surveyId;
- private String surveyName;
- private String message;
- public String getMessage() {
- return message;
- }
- public void setMessage(String message) {
- this.message = message;
- }
- public String getSurveyId() {
- return surveyId;
- }
- public void setSurveyId(String surveyId) {
- this.surveyId = surveyId;
- }
- public String getSurveyName() {
- return surveyName;
- }
- public void setSurveyName(String surveyName) {
- this.surveyName = surveyName;
- }
- }
- public class SurveyListVO {
- private String message;
- private List<SurveyVO> result;
- public String getMessage() {
- return message;
- }
- public void setMessage(String message) {
- this.message = message;
- }
- public List<SurveyVO> getResult() {
- return result;
- }
- public void setResult(List<SurveyVO> result) {
- this.result = result;
- }
- }
json格式转换成object类型:
- public class fromGson() {
- sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};
- Gson gson = new Gson();
- SurveyListVO surveyListVO = gson.fromJson(sTotalString,
- SurveyListVO.class);
- for (int i = 0; i < surveyListVO.getResult().size(); i++) {
- System.out.print(surveyListVO.getResult().get(i)
- .getSurveyId());
- print: 1////2
- System.out.print(surveyListVO.getResult().get(i)
- .getSurveyName());
- print: B///C
- System.out.print(surveyListVO.getMessage());
- }
- }
2、通过json-org.jar包进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
一个VO类:
- public class SurveyVO {
- private String surveyId;
- private String surveyName;
- public String getSurveyId() {
- return surveyId;
- }
- public void setSurveyId(String surveyId) {
- this.surveyId = surveyId;
- }
- public String getSurveyName() {
- return surveyName;
- }
- public void setSurveyName(String surveyName) {
- this.surveyName = surveyName;
- }
- }
json格式转换成object类型:
- public class fromJson() {
- sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};
- JSONObject json;
- try {
- json = new JSONObject(sTotalString);
- JSONArray results = json.getJSONArray("result");
- for (int i = 0; i < results.length(); i++) {
- SurveyVO surveyVO = new SurveyVO();
- JSONObject result = results.getJSONObject(i);
- System.out.println(result.getString("surveyId")+" "+result.getString("surveyName"));
- surveyVO.setSurveyId(result.getString("surveyId"));
- surveyVO.setSurveyName(result.getString("surveyName"));
- surveyVOList.add(surveyVO);
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
java 解析json格式数据的更多相关文章
- java 解析json格式数据(转)
2012-07-30 16:43:54| 分类: java | 标签:java json |举报|字号 订阅 有时候我们可能会用到json格式的数据进行数据的传输,那么我们怎么把接收到 ...
- 解析json格式数据
实现目标 读取文件中的json格式数据,一行为一条json格式数据.进行解析封装成实体类. 通过google的Gson对象解析json格式数据 我现在解析的json格式数据为: {",&qu ...
- 实现android上解析Json格式数据功能
实现android上解析Json格式数据功能,该源码转载于安卓教程网的,http://android.662p.com ,个人感觉还不错的,大家可以看看一下吧. package com.practic ...
- java保存json格式数据,保存字符串和读取字符串
1.java保存json格式数据,保存字符串和读取字符串 import java.io.*; class RWJson { public void wiite(String s, String toS ...
- ObjectMapper用于将java对象转换为json格式数据以及JSONObject对象解析json格式数据
ObjectMapper objectMapper = new ObjectMapper(); //反序列化的时候如果多了其他属性,不抛出异常 objectMapper.configure(Deser ...
- 用GSON解析Json格式数据
GSON是谷歌提供的开源库,用来解析Json格式的数据,非常好用.如果要使用GSON的话,则要先下载gson-2.2.4.jar这个文件,如果是在Android项目中使用,则在Android项目的li ...
- $Java-json系列(一):用GSON解析Json格式数据
GSON是谷歌提供的开源库,用来解析Json格式的数据,非常好用.如果要使用GSON的话,则要先下载gson-2.2.4.jar这个文件,如果是在Android项目中使用,则在Android项目的li ...
- Jquery解析Json格式数据
今天稍微学习了一下Json,JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. JSON采用完全独立于语言的 ...
- C# 解析JSON格式数据
JSON简介 JSON(全称为JavaScript ObjectNotation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集.JSON采用完全独立于语言的文本格式,可 ...
随机推荐
- vertical-align 和line-height 以及baseline的解析
line-height是相对于font-size来计算的,vertical-align的百分比值是相对于line-height来计算的,vertical-align的默认是baseline; demo ...
- MySQL中怎么查询一张表的列数
select count(1) from information_schema.columns where table_schema='dbname' and table_name='tbname;
- C#托盘图标
在C#中实现托盘是多么简单 http://www.cnblogs.com/anytao/archive/2006/04/26/385377.html http://www.cnblogs.com/du ...
- python中lambda函数的笔记
学习网址为:https://foofish.net/lambda.html 通过lambda来定义一个匿名的函数,该匿名函数冒号前面的为函数传入值,冒号后面跟着的就是函数表达式. 例: lambda ...
- J20170520-ts
手取り 净收入,实收额;用手抓住,到手
- bzoj1048(记忆化搜索)
1048: [HAOI2007]分割矩阵 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 1218 Solved: 890[Submit][Statu ...
- hasLayout原理【转】
项目中经常用到:*html .clearfix{ height:1%;} //IE6能识别*+html .clearfix{height:1%;} //IE7能识别1,有很多方式能触发hasLayo ...
- 扩展KMP的应用
扩展KMP的应用: 给出模板串S和串T,长度分别为Slen和Tlen,要求在线性时间内,对于每个S[i](0<=i<Slen),求出S[i..Slen-1]与T的 最长公共前缀长度,记为e ...
- .NET下集中实现AOP编程的框架
一.Castle 使用这个框架呢,首先是需要安装NuGet包. 先建立一个控制台项目,然后在NuGet中搜索Castle.Windsor,不出意外的话应该能找到如下的包 然后安装,会自动的安装包Cas ...
- Windows API函数大全一
1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连 ...