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. Codeforces Round #619 (Div. 2) Ayoub's function

    Ayoub thinks that he is a very smart person, so he created a function f(s)f(s) , where ss is a binar ...

  2. XCOJ 1205 A.First Blood

    1205: A.First Blood 时间限制: 1 Sec  内存限制: 64 MB提交: 152  解决: 44 标签提交统计讨论版 题目描述 盖伦是个小学一年级的学生,在一次数学课的时候,老师 ...

  3. 关于python 3.x import matplotlib as plt ImportError: DLL load failed: 找不到指定的模块

    windows 10下使用conda update --all更新过后,就出现这样的问题了,各种包不能用了,然后在stackoverflow上搜到有人也遇到相同的问题,并通过其中的回答找到了原因,这里 ...

  4. mysql 官方读写分离方案

    mysql 8.0 集群模式下的自动读写分离方案 问题 多主模式下的组复制,看起来挺好,起始问题和限制很多.而且中断一个复制就无法配置了 多主模式下,innodbcluster 等于是无用的,不需要自 ...

  5. win10 桌面快捷键技术

    win 10 的 快捷键技术,使用还是挺流畅舒适的: Windows10技术新增键盘快捷键汇总: 1.贴靠窗口:Win +左/右> Win +上/下>窗口可以变为1/4大小放置在屏幕4个角 ...

  6. 《Interest Rate Risk Modeling》阅读笔记——第八章:基于 LIBOR 模型用互换和利率期权进行对冲

    目录 第八章:基于 LIBOR 模型用互换和利率期权进行对冲 思维导图 推导浮息债在重置日(reset date)的价格 第八章:基于 LIBOR 模型用互换和利率期权进行对冲 思维导图 推导浮息债在 ...

  7. C/C++网络编程8——多进程服务器端之销毁僵尸进程

    上一节提到,当子进程执行结束,父进程还在执行,在父进程结束之前子进程会成为僵尸进程,那么怎么销毁僵尸进程呢?父进程主动接收子进程的返回值. 销毁僵尸进程的方法: 1:使用wait函数 2:使用wait ...

  8. 吴裕雄--天生自然PythonDjangoWeb企业开发:解决Pythonno module named "XX"问题

    在项目中加入 sys.path.append('你的django项目路径') sys.path.append('python的site-packages路径')

  9. linux 删除 复制 移动

    Linux文件类型 - 普通文件 d 目录文件 b 块设备 c 字符设备 l 符号链接文件 p 管道文件pipe s 套接字文件socket 基名:basename 目录名:dirname basen ...

  10. 使用TortoiseGit处理代码冲突

    使用TortoiseGit处理代码冲突  https://www.cnblogs.com/jason-beijing/p/5718190.html 场景一  user0 有新提交 user1 没有pu ...