goドキュメントのXmlの例は壊れています。誰かがそれを機能させる方法を知っていますか?コンパイルすると、結果は次のようになります。
xmlexample.go:34: cannot use "name" (type string) as type xml.Name in field value
xmlexample.go:34: cannot use nil as type string in field value
xmlexample.go:34: too few values in struct initializer
関連するコードは次のとおりです。
package main
import (
"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 )
}