为了账号安全,请及时绑定邮箱和手机立即绑定

如何将 JSON 字符串转换为 JSON 数组列表?

如何将 JSON 字符串转换为 JSON 数组列表?

慕娘9325324 2021-10-27 09:57:48
我有一个字符串,我想在列表中显示它,所以我必须在数组列表中转换它我该怎么做?我试过这些东西     String Result =response.body().getGetFlightAvailibilityResponse().getGetFlightAvailibilityResult().getGetFlightAvailibilityResponse().getFlightDetails();                    try {                        Gson gson = new Gson();                        Type type = new TypeToken<List<Object>>()                         {}.getType();                        List<String> contactList = gson.fromJson(Result,                         type);                      //  JSONArray jsonArray = new JSONArray(Result);                    } catch (Exception e) {                        e.printStackTrace();                    } 这是我的字符串[[SrNo,AirlineCode,FlightNo,FromAirportCode,ToAirportCode,DepDate,DepTime,ArrDate,ArrTime,FlightClass,FlightTime,TotalAmount,TaxAmount,Stops,ValCarrier,FromTerminal,ToTerminal,MainClass,FareBasis,AgencyCharge,FareType,AvailSeats,FlightTrack] ,[100YO,9W,346,BOM,DEL,04/10/2018,07:30,04/10/2018,09:40,O,130,3998,1798,0,9W,2,3,Y, ,0,N,0,,0$307|37|100YO],[101YO,9W,953,BOM,JAI,04/10/2018,14:35,04/10/2018,16:30,O,115 ,4550,1949,1,9W,2, 2,Y,,0,N,0,,0$307|37|101YO],[101YO,9W,788,JAI,DEL,04/10/2018,17: 00,04/10/2018,18:05,O,65,0,0,0,9W,2, 3,Y,,0,N,0,,0$307|37|101YO],[102YO,9W ,2418,BOM,JAI,04/10/2018,18:20,04/10/2018,20:10,O,110,4550,1949,1,9W,2,2,Y,,0,N, 0,,0$307|37|102YO],[102YO,9W,756,JAI,DEL,04/10/2018,21:15,04/10/2018,22:20,O,65,0,0, 0,9W,2, 3,Y,,0,N,0,,0$307|37|102YO],[103YO,9W,309,BOM,DEL,04/10/2018,19:00,04/10 /2018,21:15,V,135,4995,1845,0,9W,2, 3,Y,,0,N,0,,0$307|37|103YO],[104YO,9W,2374,BOM,LKO,04/10/2018,12:25,04 /10/2018,14:45,W,140,5053,2573,1,9W,2, 2,Y,,0,N,0,,0$307|37|104YO],[104YO,9W,856, LKO,DEL,04/10/2018,15:40,04/10/2018,17:00,W,80,0,0,0,9W,2,3,Y,,0,N,0,, 0$307|37|104YO],
查看完整描述

2 回答

?
函数式编程

TA贡献1807条经验 获得超9个赞

在这里,您将获得 JSONObject,因此您可以将其转换为


JSONArray jsonArray = new JSONArray(readlocationFeed); 


line with following


JSONObject jsnobject = new JSONObject(readlocationFeed);


and after


JSONArray jsonArray = jsnobject.getJSONArray("locations");


for (int i = 0; i < jsonArray.length(); i++) {


    JSONObject explrObject = jsonArray.getJSONObject(i);

}

您可以在 Arraylist 上添加此对象。


查看完整回答
反对 回复 2021-10-27
?
慕码人8056858

TA贡献1803条经验 获得超6个赞

This will help you.



JSONArray jsonArrayList = new JSONArray(); 


ArrayList<String> label=new ArrayList<>();


JSONArray jsonArray = new JSONArray(readlocationFeed); 

if(jsonArray.length()>0){


        for(int i=0;i<jsonArray.length();i++){


                JSONArray jsonArrayForValue = new JSONArray(jsonArray.get(i)); 




                if(i==0){


                ////////**********For Label/Header*******///////////


                        for(int j=0;j<jsonArrayForValue.length();j++){


                                label.add(jsonArrayForValue.get(j));

                        }


                }else{


                    JSONObject eachDeatail=new JSONObject();

                    for(int j=0;j<jsonArrayForValue.length();j++){



                        eachDeatail.put(label.get(j),jsonArrayForValue.get(label.get(j)).toString());


                        }   


                        jsonArrayList.add(eachDeatail);

                }


        }

}


查看完整回答
反对 回复 2021-10-27
  • 2 回答
  • 0 关注
  • 381 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信