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

Go XML Unmarshal示例无法编译

Go XML Unmarshal示例无法编译

Go
慕森卡 2021-04-09 15:11:19
go docs中的Xml示例已损坏。有谁知道如何使它工作?当我编译它时,结果是:xmlexample.go:34: cannot use "name" (type string) as type xml.Name in field valuexmlexample.go:34: cannot use nil as type string in field valuexmlexample.go:34: too few values in struct initializer以下是相关代码:package mainimport (        "bytes"        "xml")type Email struct {        Where string "attr";        Addr string;}type Result struct {        XMLName xml.Name "result";        Name string;        Phone string;        Email []Email;}var buf = bytes.NewBufferString ( `<result>        <email where="home">                <addr>gre@example.com</addr>        </email>        <email where='work'>                <addr>gre@work.com</addr>        </email>        <name>Grace R. Emlin</name>        <address>123 Main Street</address></result>`)func main() {        var result = Result{ "name", "phone", nil }        xml.Unmarshal ( buf , &result )        println ( result.Name )}
查看完整描述

3 回答

?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

线

var result = Result{ "name", "phone", nil }

需要成为

var result = Result{ Name: "name", Phone: "phone", Email: nil }

然后它应该按预期工作。我提交了修补程序以修复文档,巧合的是,此后不久就发布了一个版本,因此没有人应该再次遇到这一特定问题。


查看完整回答
反对 回复 2021-04-26
  • 3 回答
  • 0 关注
  • 249 浏览
慕课专栏
更多

添加回答

举报

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