猿问

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

我的 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"`

}

但它在输出时给了我空数组。


慕田峪9158850
浏览 123回答 1
1回答

拉丁的传说

您可以使用以下结构模式来解析给定的 XML。type Results struct {&nbsp; &nbsp; Meta&nbsp; &nbsp;Meta&nbsp; &nbsp;`xml:"meta"`&nbsp; &nbsp; Result Result `xml:"result"`}type Meta struct {&nbsp; &nbsp; FieldOrder FieldOrder `xml:"fieldOrder"`}type FieldOrder struct {&nbsp; &nbsp; Fields []string `xml:"field"`}type Result struct {&nbsp; &nbsp; Fields []Field `xml:"field"`}type Field struct {&nbsp; &nbsp; K&nbsp; &nbsp; &nbsp; string&nbsp; &nbsp;`xml:"k,attr"`&nbsp; &nbsp; Values []string `xml:"value>text"`}工作示例: https:&nbsp;//play.golang.org/p/H6EHl_1dPLg
随时随地看视频慕课网APP

相关分类

Go
我要回答