从Go中动态定义JSON文件的结构
问题描述:
我想基于JSON文件动态定义Go项目中的结构。从Go中动态定义JSON文件的结构
举例来说,如果我有像这样一个JSON文件...
{
"date": "today",
"time": 12,
"era": "never",
"alive": true
}
那我就想到会产生一个结构(即看起来)像这样(但在源代码中没有明确定义)...
type DynamicJSON struct {
date, era string
time int
alive bool
}
此外,我要嵌套JSON对象,我可以做这样的事情......
{
"date": "today",
"time": 12,
"era": "never",
"alive": true,
"nested": {
"date": "tomorrow",
"alive": true
}
}
...这实际上会产生两种不同的结构,像这样...
type DynamicJSON1 struct {
date, era string
time int
alive bool
}
type DynamicJSON2 struct {
date string
alive bool
}
这是不是当前支持?
答
我相信你无法动态,在运行时,在围棋中定义的类型。下一个最好的选择是使用代码生成。 – mkopriva
你想达到什么结果? –
如果你真的非结构化数据可以解组成地图样'图[字符串]接口{}' –