我正在尝试在 Go 中解组一些基本的 XML。我之前已经能够在 Go 中解组非常大的 XML 文件,所以我在这里遇到的问题真的让我感到困惑。Unmarshalling 会发现一项,因为它应该找到一项,但所有值都是它们的默认值:字符串为空,浮点数为零。任何提示都会有所帮助。谢谢。XML<config><throttle delay="20" unit="s" host="feeds.feedburner.com"/></config>输出host:"", unit:"", delay:0.000000代码package mainimport ( "encoding/xml" "fmt")// Config allows for unmarshling of the remote configuration file.type Config struct { XMLName xml.Name `xml:"config"` Throttlers []*Throttler `xml:"throttle"`}// Throttler stores the throttle information read from the configuration file.type Throttler struct { host string `xml:"host,attr"` unit string `xml:"unit,attr"` delay float64 `xml:"delay,attr"`}func main() { data := ` <config><throttle delay="20" unit="s" host="feeds.feedburner.com"/></config> ` config := Config{} err := xml.Unmarshal([]byte(data), &config) if err != nil { fmt.Printf("error: %config", err) return } thr := config.Throttlers[0] fmt.Println(fmt.Sprintf("host:%q, unit:%q, delay:%f", thr.host, thr.unit, thr.delay))}
- 1 回答
- 0 关注
- 197 浏览
添加回答
举报
0/150
提交
取消