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

如何将嵌套的 XML 元素解组为字符串数组?

如何将嵌套的 XML 元素解组为字符串数组?

Go
慕田峪9158850 2023-06-05 18:25:16
我的 XML 包含一个预定义元素数组,但我无法获取该数组。这是 XML 结构:<?xml version='1.0' encoding='UTF-8'?><results preview='0'>    <meta>       <fieldOrder>          <field>values(metric_name)</field>       </fieldOrder>    </meta>    <result offset='0'>        <field k='values(metric_name)'>            <value><text>process.cpu.avg</text></value>            <value><text>process.cpu.last</text></value>            <value><text>process.cpu.max</text></value>            <value><text>process.cpu.min</text></value>            <value><text>process.disk.avg</text></value>            <value><text>process.disk.last</text></value>            <value><text>process.disk.max</text></value>            <value><text>process.disk.min</text></value>            <value><text>process.ram.avg</text></value>            <value><text>process.ram.last</text></value>            <value><text>process.ram.max</text></value>            <value><text>process.ram.min</text></value>        </field>    </result></results>我试图制作一个看起来像这样的结构:type Metrics struct {    Value []string `xml:">text"`}但它在输出时给了我空数组。
查看完整描述

1 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

您可以使用以下结构模式来解析给定的 XML。


type Results struct {

    Meta   Meta   `xml:"meta"`

    Result Result `xml:"result"`

}


type Meta struct {

    FieldOrder FieldOrder `xml:"fieldOrder"`

}


type FieldOrder struct {

    Fields []string `xml:"field"`

}


type Result struct {

    Fields []Field `xml:"field"`

}


type Field struct {

    K      string   `xml:"k,attr"`

    Values []string `xml:"value>text"`

}

工作示例: https: //play.golang.org/p/H6EHl_1dPLg


查看完整回答
反对 回复 2023-06-05
  • 1 回答
  • 0 关注
  • 95 浏览
慕课专栏
更多

添加回答

举报

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