Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 (little edit)

后端 未结 5 665
灰色年华
灰色年华 2020-12-19 19:43

what I am having here is a web service that gives me the following JSON code :

[
  {
    \"_OrderDetails\": [
      {
         \"ProductName\": \"FUCHS SUPER         


        
5条回答
  •  太阳男子
    2020-12-19 20:09

    Here is how you should define your class:

    public class Item implements Serializable {
        @SerializedName("_OrderDetails")
        private OrderDetails[] mOrderDetails;
    
        @SerializedName("Id")
        private String mId;
    
        @SerializedName("OrderData")
        private String mOrderDate;
    
        @SerializedName("Number")
        private String mNumber;
    
        @SerializedName("CustomerName")
        private String mCustomerName;
    
        @SerializedName("Note")
        private String mNote;
    
        // Add setters and getters
    
        public static class OrderDetails implements Serializable {
            @SerializedName("ProductName")
            private String mProductName;
    
            @SerializedName("TotalAfterDiscount_Lc")
            private String mTotalAfterDiscount;
    
            @SerializedName("MeasureUnitName")
            private String mMeasureUnitName;
    
            @SerializedName("TotalPrice_Lc"
            private String mTotalPrice;
    
            @SerializedName("PricePerUnit_Lc")
            private String mPricePerUnit;
    
            @SerializedName("Quantity")
            private String mQuantity;
    
            // Add setters and getters
        }
    }
    

    EDIT. With the code snippet below you can deserialize the JSON into Item object.

    Gson gson = new Gson();
    Item item = gson.fromJson(json, Item.class);
    

提交回复
热议问题