为了账号安全,请及时绑定邮箱和手机立即绑定

多结构切换?

多结构切换?

Go
心有法竹 2021-08-23 17:11:28
假设我有一个应用程序接收两种不同格式的 json 数据。f1 = `{"pointtype":"type1", "data":{"col1":"val1", "col2":"val2"}}`f2 = `{"pointtype":"type2", "data":{"col3":"val3", "col3":"val3"}}`我有一个与每种类型相关的结构:type F1 struct {  col1 string  col2 string}type F2 struct {  col3 string  col4 string}假设我使用encoding/json库将原始 json 数据转换为结构体: type Point { pointtype string data json.RawMessage }如何仅通过知道点类型将数据解码为适当的结构?我正在尝试以下方面的内容:func getType(pointType string) interface{} {    switch pointType {    case "f1":        var p F1        return &p    case "f2":        var p F2        return &p    }    return nil}这是行不通的,因为返回的值是一个接口,而不是正确的结构类型。我怎样才能使这种开关结构选择工作?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 206 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信