有时候可能会用到json格式进行数据的传输,那么怎么把接收到的数据解析出来呢? 下面介绍两种解析json数据的方法:
1、通过谷歌的Gson来进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
两个VO类:
json格式转换成object类型:
2、通过json-org.jar包进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
一个VO类:
json格式转换成object类型:
1、通过谷歌的Gson来进行解析:
json数据:sTotalString = {"message":"success","result":[{"surveyid":"1","surveyname":"B"}{surveyid":"2","surveyname":"C"}]};
两个VO类:
-
publicclassSurveyVO{
-
-
privateStringsurveyId;
-
privateStringsurveyName;
-
privateStringmessage;
-
-
publicStringgetMessage(){
-
returnmessage;
-
}
-
-
publicvoidsetMessage(Stringmessage){
-
this.message=message;
-
}
-
-
publicStringgetSurveyId(){
-
returnsurveyId;
-
}
-
-
publicvoidsetSurveyId(StringsurveyId){
-
this.surveyId=surveyId;
-
}
-
-
publicStringgetSurveyName(){
-
returnsurveyName;
-
}
-
-
publicvoidsetSurveyName(StringsurveyName){
-
this.surveyName=surveyName;
-
}
-
-
}
-
-
publicclassSurveyListVO{
-
-
privateStringmessage;
-
privateList<SurveyVO>result;
-
publicStringgetMessage(){
-
returnmessage;
-
}
-
publicvoidsetMessage(Stringmessage){
-
this.message=message;
-
}
-
publicList<SurveyVO>getResult(){
-
returnresult;
-
}
-
publicvoidsetResult(List<SurveyVO>result){
-
this.result=result;
-
}
- }
-
publicclassfromGson(){
-
sTotalString={"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};
-
-
Gson gson=newGson();
-
SurveyListVO surveyListVO=gson.fromJson(sTotalString,
-
SurveyListVO.class);
-
for(inti=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类:
-
publicclassSurveyVO{
-
privateStringsurveyId;
-
privateStringsurveyName;
-
publicStringgetSurveyId(){
-
returnsurveyId;
-
}
-
publicvoidsetSurveyId(StringsurveyId){
-
this.surveyId=surveyId;
-
}
-
publicStringgetSurveyName(){
-
returnsurveyName;
-
}
-
publicvoidsetSurveyName(StringsurveyName){
-
this.surveyName=surveyName;
-
}
- }
-
publicclassfromJson(){
-
sTotalString={"message":"success","result":[{"surveyid":"1","surveyname":"B"}{"surveyid":"2","surveyname":"C"}]};
-
JSONObject json;
-
-
try{
-
json=newJSONObject(sTotalString);
-
JSONArray results=json.getJSONArray("result");
-
for(inti=0;i<results.length();i++){
-
SurveyVO surveyVO=newSurveyVO();
-
JSONObjectresult=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();
-
}
- }