您的位置:首页 > 编程语言 > Java开发

java 解析json格式数据(转)

2015-01-04 15:31 423 查看

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代码


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类型:

Java代码


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()); print: success

}

}

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

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

一个VO类:

Java代码


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类型:

Java代码


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();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: