Dev*_*s85 3 java android json gson
我有一个JSONArray,里面有很多JSONObjects。
该对象的示例是:
{
"geometry": {
"type": "Point",
"coordinates": [
11.245292261254553,
43.77014284210037
]
},
"type": "Feature",
"properties": {
"nome": "Biblio",
"type": "bibl",
"email": "iofi@gmail.com",
"note": "",
"indirizzo": "ERINI",
"numero": "19"
},
"id": 1
},
Run Code Online (Sandbox Code Playgroud)
所有这些对象都在features数组内部。
所以我这样做:
try {
array = json.getJSONArray("features");
for (int i = 0; i < array.length(); i++) {
Gson gson = new Gson();
}
}
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何在类中定义geometry和properties属性以解析JSONObject。
我尝试:
public class Point {
@SerializedName("geometry")
private Geometry geometry;
@SerializedName("id")
private String id;
@SerializedName("type")
private String type;
@SerializedName("properties")
private Properties properties;
public Geometry getGeometry() {
return geometry;
}
public void setGeometry(Geometry geometry) {
this.geometry = geometry;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public Properties getProperties() {
return properties;
}
public void setProperties(Properties properties) {
this.properties = properties;
}
public class Geometry {
@SerializedName("type")
private String type;
@SerializedName("coordinates")
private Coordinates coordinates;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public Coordinates getCoordinates() {
return coordinates;
}
public void setCoordinates(Coordinates coordinates) {
this.coordinates = coordinates;
}
}
public class Coordinates {
}
public class Properties {
@SerializedName("nome")
private String nome;
@SerializedName("tipo")
private String tipo;
@SerializedName("email")
private String email;
@SerializedName("note")
private String note;
@SerializedName("indirizzo")
private String indirizzo;
@SerializedName("numero")
private String numero;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getTipo() {
return tipo;
}
public void setTipo(String tipo) {
this.tipo = tipo;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getNote() {
return note;
}
public void setNote(String note) {
this.note = note;
}
public String getIndirizzo() {
return indirizzo;
}
public void setIndirizzo(String indirizzo) {
this.indirizzo = indirizzo;
}
public String getNumero() {
return numero;
}
public void setNumero(String numero) {
this.numero = numero;
}
}
Run Code Online (Sandbox Code Playgroud)
为"geometry"和创建模型"properties"
public class Geometry{
@SerializedName("type")
private String type;
@SerializedName("coordinates")
private double[] coordinates;
}
public class Properties{
@SerializedName("name")
private String name;
@SerializedName("type")
private String type;
@SerializedName("email")
private String email;
@SerializedName("note")
private String note;
@SerializedName("ind")
private String ind;
@SerializedName("num")
private String num;
}
Run Code Online (Sandbox Code Playgroud)
完整对象:
public class YourJsonObject{
@SerializedName("geometry")
private Geometry geometry;
@SerializedName("type")
private String type;
@SerializedName("properties")
private Properties properties;
@SerializedName("id")
private String id;
}
Run Code Online (Sandbox Code Playgroud)
"coordinates" 是对应于JSON的数组
| 归档时间: |
|
| 查看次数: |
2198 次 |
| 最近记录: |