我有一个看起来像这样的 json 数据:
[
{
lat: "41.189301799999996",
lon: "11.918255998031015",
display_name: "Some place",
address: {
address: "Address",
country: "Country",
country_code: "CC"
},
geojson: {
type: "Polygon",
coordinates: [
[
[14.4899021,41.4867039],
[14.5899021,41.5867039],
]
]
}
}
]
我想解析这些数据,从这个数组中获取第一个元素并将其转换为一个新的结构,如下所示:
type Location struct {
Name string
Country string
CountryCode string
Center Coordinate
Coordinates []Coordinate
}
我已经定义了这样的坐标类型:
type Coordinate struct {
Lat string `json:"lat"`
Lng string `json:"lon"`
}
但是,如果尝试这样解析:
bytes, err := ioutil.ReadAll(res.Body)
if err != nil {
http.Error(w, err.Error(), http.StatusBadRequest)
}
var locations [0]Location
if err := json.Unmarshal(bytes, &locations); err != nil {
fmt.Println("Error parsing json", err)
}
fmt.Println(locations)
但是,这在终端中给了我这个:
[{ { } []}]
如何解析这种json结构并将其转换为location那种结构?
沧海一幻觉
MM们
相关分类