2017-11-25 178 views
-1

目前我已经存储在我的数据库json对象作为字符串。我想将它们传递给一个地图可以咨询任何领域为:传递字符串与Json数据到Golang地图

Mymap["Name"] 
Mymap["Age"] 
.. 

比方说,我的字符串会是这样的:

'{"Name":["zero"],"Age":"10"}' 

我不知道的结构数据,所以Json可以根据需要有很多字段,也可以有很多层次的嵌套(但我更担心的是至少获得第一层)

回答

3

如果你正在处理任意结构的json对象,你可以使用接口的映射作为类型将其解组。

map[string]interface{} 

encoding/json包将很好地解组JSON对象进去,嵌套或没有。

这虽然很灵活,但有一个明显的缺点,地图的值的类型是未知的,所以要做任何有用的事情,你必须使用类型断言或类型开关。

v, ok := m["key"].(Type) 

https://play.golang.org/p/wM0gkU1g5G

+1

好吧,你有我有)。我会解决答案。 – mkopriva

+1

@zerkms感谢您指出并允许我纠正自己。 – mkopriva