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采用完全独立于语言的文本格式,可 ...
随机推荐
- word-break word-wrap
work-break:break-all CJK超出的部分自动换行 word-wrap:break-word CJK如果有分隔符,当前分隔符之后与下一个分隔符之间的内容不能在这一行全部显示的话,在当前 ...
- 关于eclipse部署项目后,在tomcat中的webapps文件夹下没有项目
转自:https://blog.csdn.net/yang505581644/article/details/78802316 一.发现问题 在eclipse中新建Dynamic Web Projec ...
- CollabNetSubversionEdge 4.0.4教程
CollabNetSubversionEdge是svn的集成环境,集合subversion,apache,viewvc, 参考网址:http://blog.miniasp.com/post/2011/ ...
- Phpspy 2011继续身份验证绕过漏洞
Author: Tm3yShell7 官方目前下载已经修补上了 目前官方下载是2011.php, 文件名为2011ok.php的是带洞版本. 今天m0r5和我说phpspy2011 我都不知道2011 ...
- Android系统中setprop,getprop,watchprops命令的使用(转载)
转自:http://blog.csdn.net/yao_guet/article/details/6531241 在android系统中,有一些初始化的配置文件,例如: /init.rc /defau ...
- 洛谷P3246 [HNOI2016]序列
传送门 题解 //minamoto #include<iostream> #include<cstdio> #define ll long long using namespa ...
- Spring + MyBaits 日志初始化两遍的问题
偶然发现一个问题,记录一下以备查询. 问题:系统启动时发现日志初始化了两次 14:28:04.798 [main] DEBUG org.apache.ibatis.logging.LogFactory ...
- [BZOJ3531] Peaks加强版
Peaks Peaks 加强版 Description 在Bytemountains有N座山峰,每座山峰有他的高度h_i.有些山峰之间有双向道路相连,共M条路径,每条路径有一个困难值,这个值越大表示越 ...
- [COCI2010]HRPA
Description N个石子,A和B轮流取,A先.每个人每次最少取一个,最多不超过上一个人的个数的2倍. 取到最后一个石子的人胜出,如果A要有必胜策略,第一次他至少要取多少个. Input 第一行 ...
- LoadRunner12学习之路(1-5)
本次LoadRunner12学习用户指南,学习周期预计3天,每天学习1-2单元内容! 2017.12.17 一.使用HPE Web Tours示例应用程序 本教程使用 HPE Web Tours(一个 ...