2012-07-30 16:43:54|  分类: java |  标签:java  json  |举报|字号 订阅

 
 
有时候我们可能会用到json格式的数据进行数据的传输,那么我们怎么把接收到的数据解析出来呢? 
  下面有两种方法: 
1、通过谷歌的Gson来进行解析: 
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};

两个VO类:

Java代码  
  1. public class SurveyVO {
  2. private String surveyId;
  3. private String surveyName;
  4. private String message;
  5. public String getMessage() {
  6. return message;
  7. }
  8. public void setMessage(String message) {
  9. this.message = message;
  10. }
  11. public String getSurveyId() {
  12. return surveyId;
  13. }
  14. public void setSurveyId(String surveyId) {
  15. this.surveyId = surveyId;
  16. }
  17. public String getSurveyName() {
  18. return surveyName;
  19. }
  20. public void setSurveyName(String surveyName) {
  21. this.surveyName = surveyName;
  22. }
  23. }
  24. public class SurveyListVO {
  25. private String message;
  26. private List<SurveyVO> result;
  27. public String getMessage() {
  28. return message;
  29. }
  30. public void setMessage(String message) {
  31. this.message = message;
  32. }
  33. public List<SurveyVO> getResult() {
  34. return result;
  35. }
  36. public void setResult(List<SurveyVO> result) {
  37. this.result = result;
  38. }
  39. }

json格式转换成object类型:

Java代码  
  1. public class fromGson() {
  2. sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
  3. Gson gson = new Gson();
  4. SurveyListVO surveyListVO = gson.fromJson(sTotalString,
  5. SurveyListVO.class);
  6. for (int i = 0; i < surveyListVO.getResult().size(); i++) {
  7. System.out.print(surveyListVO.getResult().get(i)
  8. .getSurveyId());  print: 1////2
  9. System.out.print(surveyListVO.getResult().get(i)
  10. .getSurveyName());   print: B///C
  11. System.out.print(surveyListVO.getMessage());   print: success
  12. }
  13. }

2、通过json-org.jar包进行解析:

json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};

一个VO类:

Java代码  
  1. public class SurveyVO {
  2. private String surveyId;
  3. private String surveyName;
  4. public String getSurveyId() {
  5. return surveyId;
  6. }
  7. public void setSurveyId(String surveyId) {
  8. this.surveyId = surveyId;
  9. }
  10. public String getSurveyName() {
  11. return surveyName;
  12. }
  13. public void setSurveyName(String surveyName) {
  14. this.surveyName = surveyName;
  15. }
  16. }

json格式转换成object类型:

Java代码  
  1. public class fromJson() {
  2. sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
  3. JSONObject json;
  4. try {
  5. json = new JSONObject(sTotalString);
  6. JSONArray results = json.getJSONArray("result");
  7. for (int i = 0; i < results.length(); i++) {
  8. SurveyVO surveyVO = new SurveyVO();
  9. JSONObject result = results.getJSONObject(i);
  10. System.out.println(result.getString("surveyId")+"  "+result.getString("surveyName"));
  11. surveyVO.setSurveyId(result.getString("surveyId"));
  12. surveyVO.setSurveyName(result.getString("surveyName"));
  13. surveyVOList.add(surveyVO);
  14. }
  15. } catch (JSONException e) {
  16. e.printStackTrace();
  17. }
  18. }

java 解析json格式数据(转)的更多相关文章

  1. java 解析json格式数据

    有时候可能会用到json格式进行数据的传输,那么怎么把接收到的数据解析出来呢? 下面介绍两种解析json数据的方法: 1.通过谷歌的Gson来进行解析: json数据:sTotalString = { ...

  2. 解析json格式数据

    实现目标 读取文件中的json格式数据,一行为一条json格式数据.进行解析封装成实体类. 通过google的Gson对象解析json格式数据 我现在解析的json格式数据为: {",&qu ...

  3. 实现android上解析Json格式数据功能

    实现android上解析Json格式数据功能,该源码转载于安卓教程网的,http://android.662p.com ,个人感觉还不错的,大家可以看看一下吧. package com.practic ...

  4. java保存json格式数据,保存字符串和读取字符串

    1.java保存json格式数据,保存字符串和读取字符串 import java.io.*; class RWJson { public void wiite(String s, String toS ...

  5. ObjectMapper用于将java对象转换为json格式数据以及JSONObject对象解析json格式数据

    ObjectMapper objectMapper = new ObjectMapper(); //反序列化的时候如果多了其他属性,不抛出异常 objectMapper.configure(Deser ...

  6. 用GSON解析Json格式数据

    GSON是谷歌提供的开源库,用来解析Json格式的数据,非常好用.如果要使用GSON的话,则要先下载gson-2.2.4.jar这个文件,如果是在Android项目中使用,则在Android项目的li ...

  7. $Java-json系列(一):用GSON解析Json格式数据

    GSON是谷歌提供的开源库,用来解析Json格式的数据,非常好用.如果要使用GSON的话,则要先下载gson-2.2.4.jar这个文件,如果是在Android项目中使用,则在Android项目的li ...

  8. Jquery解析Json格式数据

    今天稍微学习了一下Json,JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. JSON采用完全独立于语言的 ...

  9. C# 解析JSON格式数据

    JSON简介 JSON(全称为JavaScript ObjectNotation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集.JSON采用完全独立于语言的文本格式,可 ...

随机推荐

  1. 解决前端项目启动时报错:Use // eslint-disable-next-line to ignore the next line.

    首先说一下这个问题产生的原因: 项目创建时设置了使用 eslint 进行代码规范检查. 解决办法: 找到webpack.base.conf.js文件,并且将下满这行代码注释掉. ...(config. ...

  2. redis requires Ruby version >= 2.2.2 系统默认 ruby 版本过低,导致 Redis 接口安装失败

    安装 Redis 接口时异常 ,系统 ruby 版本过低 ! 输入命令 " gem install redis " 出现 " ERROR:  Error installi ...

  3. Android开发遇到的问题:不给include设置width、height,导致ListView GridView内容无法显示

    我的目的是做一个带有TextView的ListView列表页面. 以下是这个页面的xml: <?xml version="1.0" encoding="utf-8& ...

  4. Keras下载的数据集以及预训练模型保存在哪里

    Keras下载的数据集在以下目录中: root\\.keras\datasets Keras下载的预训练模型在以下目录中: root\\.keras\models 在win10系统来说,用户主目录是: ...

  5. linear-gradient()的用法

    linear-gradient() 函数用于创建一个线性渐变的 "图像" 它的语法是 background: linear-gradient(direction, color-st ...

  6. linux服务器自动备份与删除postgres数据库数据

    1.先创一个back.sh 文件,授权,然后在下面这个文件添加脚本 export PGPASSWORD='123456'        #这是登录服务器密码cur_time=`date +%Y%m%d ...

  7. c++子类父类关系(翁恺c++公开课[15-16]学习笔记)

    关于类的继承有三种:public继承.private继承.protected继承 首先说明,关于类的成员变量.函数的权限有三种(public.private.protected) 我们通常会让所有的成 ...

  8. 学习笔记(16)- InsuranceQA_zh

    仓库地址:https://github.com/l11x0m7/InsuranceQA_zh Convolutional Neural Network for Chinese InsuranceQA ...

  9. DAC

    DAC的功能:可以输出电压(无触发,设置DAC转换值,DAC使能更新寄存器和启动转换)或者波形(连续转换,用DMA发送数据,定时器触发).首先有个正弦波波形的数组,内存到DAC的DMA通道不断的将正弦 ...

  10. android悬浮按钮(Floating action button)的两种实现方法

    原文: http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1028/1857.html 最近android中有很多新的设计规范被引入 ...