java解析json格式数据

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

1、通过谷歌的Gson来进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};

两个VO类:
  1. publicclassSurveyVO{

  2. privateStringsurveyId;
  3. privateStringsurveyName;
  4. privateStringmessage;

  5. publicStringgetMessage(){
  6. returnmessage;
  7. }

  8. publicvoidsetMessage(Stringmessage){
  9. this.message=message;
  10. }

  11. publicStringgetSurveyId(){
  12. returnsurveyId;
  13. }

  14. publicvoidsetSurveyId(StringsurveyId){
  15. this.surveyId=surveyId;
  16. }

  17. publicStringgetSurveyName(){
  18. returnsurveyName;
  19. }

  20. publicvoidsetSurveyName(StringsurveyName){
  21. this.surveyName=surveyName;
  22. }

  23. }

  24. publicclassSurveyListVO{

  25. privateStringmessage;
  26. privateList<SurveyVO>result;
  27. publicStringgetMessage(){
  28. returnmessage;
  29. }
  30. publicvoidsetMessage(Stringmessage){
  31. this.message=message;
  32. }
  33. publicList<SurveyVO>getResult(){
  34. returnresult;
  35. }
  36. publicvoidsetResult(List<SurveyVO>result){
  37. this.result=result;
  38. }
  39. }
json格式转换成object类型:
  1. publicclassfromGson(){
  2. sTotalString={"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};

  3. Gson gson=newGson();
  4. SurveyListVO surveyListVO=gson.fromJson(sTotalString,
  5. SurveyListVO.class);
  6. for(inti=0;i<surveyListVO.getResult().size();i++){
  7. System.out.print(surveyListVO.getResult().get(i)
  8. .getSurveyId());
  9. print:12
  10. System.out.print(surveyListVO.getResult().get(i)
  11. .getSurveyName());
  12. print:B///C
  13. System.out.print(surveyListVO.getMessage());
  14. }
  15. }


2、通过json-org.jar包进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};

一个VO类:
  1. publicclassSurveyVO{
  2. privateStringsurveyId;
  3. privateStringsurveyName;
  4. publicStringgetSurveyId(){
  5. returnsurveyId;
  6. }
  7. publicvoidsetSurveyId(StringsurveyId){
  8. this.surveyId=surveyId;
  9. }
  10. publicStringgetSurveyName(){
  11. returnsurveyName;
  12. }
  13. publicvoidsetSurveyName(StringsurveyName){
  14. this.surveyName=surveyName;
  15. }
  16. }
json格式转换成object类型:

  1. publicclassfromJson(){
  2. sTotalString={"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};
  3. JSONObject json;

  4. try{
  5. json=newJSONObject(sTotalString);
  6. JSONArray results=json.getJSONArray("result");
  7. for(inti=0;i<results.length();i++){
  8. SurveyVO surveyVO=newSurveyVO();
  9. JSONObjectresult=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. }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值