【问题标题】:Deserialize anonymous objects反序列化匿名对象
【发布时间】:2023-04-08 00:53:01
【问题描述】:

locations 属性没有被反序列化,我做错了什么?

来自pollinglocation.googleapis.com的JSON片段

...
"locations":[[{"dataset_id":841,
                "election_id":2,
                "id":"841:100001351",
                "address":{"location_name":"ROBERT S PAYNE SCHOOL",
                           "line1":"1201 Floyd St",
                           "city":"Lynchburg",
                           "state":"VA",
                           "zip":"245011913"},
                           "directions":"",
                           "polling_hours":"6 AM - 7 PM"}]],
...

Java 对象

public class PollingLocation {

 public PollingLocation() {
 }

 String status;
 ArrayList<ArrayList<Anonymous>> locations;

 public class Anonymous {

  public Anonymous() {
  }

  String dataset_id;
  String election_id;
  String id;
  Address address;
 }

 public class Address {

  public Address() {
  }

  String location_name;
  String line1;
  String city;
  String stage;
  String zip;
  String polling_hours;
 }
}

反序列化的代码

PollingLocation obj2 = gson.fromJson(json, PollingLocation.class);

【问题讨论】:

    标签: json serialization gson


    【解决方案1】:

    一切。 具体来说,您不能使用内部类或集合类。

    public class PollingLocation {
    
        public PollingLocation() {
        }
    
        String status;
        Anonymous[][] locations;
    
    }
    
    class Anonymous {
    
        public Anonymous() {
        }
    
        String dataset_id;
        String election_id;
        String id;
        Address address;
    }
    
    class Address {
    
        public Address() {
        }
    
        String location_name;
        String line1;
        String city;
        String stage;
        String zip;
        String polling_hours;
    }
    

    【讨论】:

      猜你喜欢
      • 2011-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多