将map类型转换为结构体{cumb map[Code:330282000000 SystemID:1 XCoor:3.5 YCoor:6]}
时间: 2024-02-08 12:03:11 浏览: 100
地图文件格式转换
4星 · 用户满意度95%
可以定义一个对应的结构体类型,然后使用类型断言将map类型转换为该结构体类型,示例代码如下:
```go
type Location struct {
Code string
SystemID int
XCoor float64
YCoor float64
}
func main() {
m := map[string]interface{}{
"Code": "330282000000",
"SystemID": 1,
"XCoor": 3.5,
"YCoor": 6.0,
}
loc := Location{}
if err := mapstructure.Decode(m, &loc); err != nil {
panic(err)
}
fmt.Printf("%+v\n", loc)
}
```
输出结果为:
```
{Code:330282000000 SystemID:1 XCoor:3.5 YCoor:6}
```
其中,`mapstructure.Decode`函数可以将map类型转换为对应的结构体类型。需要注意的是,需要导入`github.com/mitchellh/mapstructure`包来使用该函数。
阅读全文