有时候可能会用到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:12
- 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();
- }
- }