在GOlang中解析XML

时间:2016-05-26 22:27:28

标签: xml go

我正在学习如何使用本课程解析GOlang中的XML:https://astaxie.gitbooks.io/build-web-application-with-golang/content/en/07.1.html 我成功地将结果显示在那里:

{{ servers} 1 [{{ server} Shanghai_VPN 127.0.0.1} {{ server} Beijing_VPN 127.0.0.2}]

但是如何从每个字段中获取文本?当我打印时,例如v.Svs,我得到了

[{{ server} Shanghai_VPN 127.0.0.1} {{ server} Beijing_VPN 127.0.0.2}].

我如何收到" Shanghai_VPN 127.0.0.1"

1 个答案:

答案 0 :(得分:2)

假设您正在使用该示例中的对象,要访问列表中第一项的服务器名称和IP,您将使用以下内容;

fmt.Println(v.Svs[0].ServerName)
fmt.Println(v.Svs[0].ServerIP)

实际上你应该迭代数组,因为你不知道有多少个对象。这是一个有效的实例; https://play.golang.org/p/abnc9VaNlO

使用迭代和输出格式,您将具有上述内容;

for _, srv := range v.Svs {
     fmt.Println(srv.ServerName + " " + srv.ServerIP)
}