android gson接收对象作为字符串变量中的列表

时间:2016-08-02 12:32:25

标签: android json gson

我正在使用 Gson 库反序列化来自 API 请求的对象 json string ,这是它在API源代码中的结构:

public List<typeBaseAirSegment> Airsegments { get; set; }
public List<AirPricingSolution> AirPriceSolutionlist { get; set; }
public List<SearchPassenger> SearchPassengerList { get; set; }
public List<AirlineData> Airlines { get; set; }
public List<FlightItem> AvailableFlights { get; set; }
public FlightSearchData FlightSearchData { get; set; }
public bool Succeeded { get; set; }
public string ErrorMessage { get; set; }

到我的android项目中的这个对象类:

public boolean succeeded ;
public String errorMessage ;
public String airsegments;
public String airPriceSolutionlist;
public String searchPassengerList;
public List<AirlineData>airlines;
public List<FlightItem> availableFlights;
public FlightSearchData flightSearchData;

它们之间的区别在于对象(airsegments,airPriceSolutionlist,searchPassengerList)是字符串,但在基类中是对象列表。

我希望将这三个值作为字符串接收,并且不要尝试反序列化它们

我试过那段代码:

GsonBuilder builder = new GsonBuilder();
Gson gson = builder.create();
FlightSearchResultModel flightSearchResultModel = (FlightSearchResultModel) gson.fromJson(json, FlightSearchResultModel.class);

但我有这个例外:

java.lang.IllegalStateException: Expected a string but was BEGIN_ARRAY at line 2 column 19 path $.airsegments

怎么做?

感谢。

0 个答案:

没有答案