解析xml 成bool的問題

lvpengzhen發表於2018-02-27

使用 xml 包解析 xml 文字,關於解析類似 “<ok/>” 的元素,檢測是否存在。 使用下面程式碼

package main

import (
    &quot;encoding/xml&quot;
    &quot;fmt&quot;
    &quot;runtime&quot;
)

type Reply struct {
    XMLName xml.Name `xml:&quot;xml&quot;`
    Ok      bool     `xml:&quot;ok&quot;`
}

var Text = `&lt;xml&gt;
    &lt;ok/&gt;
    &lt;/xml&gt;
    `

func main() {
    fmt.Println(&quot;version&quot;, runtime.Version())

    msg := &amp;Reply{}
    err := xml.Unmarshal([]byte(Text), msg)
    if err != nil {
        fmt.Println(err)
    }

    fmt.Println(fmt.Sprintf(&quot;%#v&quot;, msg))
}

輸出結果為

version go1.9.3
&amp;main.Reply{XMLName:xml.Name{Space:&quot;&quot;, Local:&quot;xml&quot;}, Ok:false}

請問有沒有辦法對映成 bool 欄位?或者其他好的寫法檢測是否存在 “<ok/>”?

更多原創文章乾貨分享,請關注公眾號
  • 解析xml  成bool的問題
  • 加微信實戰群請加微信(註明:實戰群):gocnio

相關文章