亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Golang > 正文

使用go語言解析xml的實現方法(必看篇)

2020-04-01 19:05:26
字體:
來源:轉載
供稿:網友

操作系統: CentOS 6.9_x64

go語言版本: 1.8.3

問題描述

現有一個自動報障程序,如果服務出錯會自動給指定人發送郵件,配置文件內容如下(default.xml):

<?xml version="1.0" encoding="UTF-8"?><config>  <smtpServer>smtp.163.com</smtpServer>  <smtpPort>25</smtpPort>  <sender>user@163.com</sender>  <senderPasswd>123456</senderPasswd>  <receivers flag="true">    <user>Mike_Zhang@live.com</user>    <user>test1@qq.com</user>  </receivers></config>

該配置以config為root標簽,有xml text部分(比如smtpServer標簽)、嵌套xml(receivers標簽)、有xml attribute部分(receivers標簽的flag)、類似數組的多行配置(user標簽), 數據類型有字符串和數字兩種類型。

解決方案

package mainimport (  "encoding/xml"  "fmt"  "io/ioutil"  "os")type SConfig struct {  XMLName  xml.Name `xml:"config"` // 指定最外層的標簽為config  SmtpServer string `xml:"smtpServer"` // 讀取smtpServer配置項,并將結果保存到SmtpServer變量中  SmtpPort int `xml:"smtpPort"`  Sender string `xml:"sender"`  SenderPasswd string `xml:"senderPasswd"`  Receivers SReceivers `xml:"receivers"` // 讀取receivers標簽下的內容,以結構方式獲取}type SReceivers struct {  Flag string `xml:"flag,attr"` // 讀取flag屬性  User []string `xml:"user"` // 讀取user數組}func main() {  file, err := os.Open("default.xml") // For read access.  if err != nil {    fmt.Printf("error: %v", err)    return  }  defer file.Close()  data, err := ioutil.ReadAll(file)  if err != nil {    fmt.Printf("error: %v", err)    return  }  v := SConfig{}  err = xml.Unmarshal(data, &v)  if err != nil {    fmt.Printf("error: %v", err)    return  }  fmt.Println(v)  fmt.Println("SmtpServer : ",v.SmtpServer)  fmt.Println("SmtpPort : ",v.SmtpPort)  fmt.Println("Sender : ",v.Sender)  fmt.Println("SenderPasswd : ",v.SenderPasswd)  fmt.Println("Receivers.Flag : ",v.Receivers.Flag)  for i,element := range v.Receivers.User {    fmt.Println(i,element)  }}

運行效果:

[root@local t1]# lsdefault.xml xmlCnfTest1.go[root@local t1]# go run xmlCnfTest1.go{{ config} smtp.163.com 25 user@163.com 123456 {true [Mike_Zhang@live.com test1@qq.com]}}SmtpServer : smtp.163.comSmtpPort : 25Sender : user@163.comSenderPasswd : 123456Receivers.Flag : trueMike_Zhang@live.comtest1@qq.com[root@local t1]#

討論

如果需要直接從字符串解析xml配置,可將如下語句中的data替換即可:

err = xml.Unmarshal(data, &v)

比如:

err = xml.Unmarshal([]byte(ConfigContent), &v) // ConfigContent為xml字符串

好,就這些了,希望對你有幫助。

以上這篇使用go語言解析xml的實現方法(必看篇)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美午夜精品久久久久久人妖| 国内精品美女av在线播放| 久久中文字幕视频| 亚洲国产私拍精品国模在线观看| 久久久久999| 久99久在线视频| 91精品在线观看视频| 亚洲曰本av电影| 国产精品视频免费在线| 国产精品91在线观看| 久久久久久久久亚洲| 亚洲电影在线看| 亚洲一区美女视频在线观看免费| 国产精国产精品| 日本精品视频在线播放| 欧美精品一区二区免费| 国产精品欧美一区二区| 日韩激情av在线播放| 欧美在线视频网站| 亚洲丝袜在线视频| 久久久电影免费观看完整版| 亚洲精品suv精品一区二区| 4k岛国日韩精品**专区| 精品视频一区在线视频| 韩国19禁主播vip福利视频| 欧美日韩激情美女| 亚洲欧美在线第一页| 中文字幕日韩电影| 国产精品9999| 日韩av在线不卡| 国产精品91在线观看| 亚洲另类图片色| 国产精品一区二区三区毛片淫片| 操91在线视频| 精品一区电影国产| 美女扒开尿口让男人操亚洲视频网站| 亚洲高清免费观看高清完整版| 啊v视频在线一区二区三区| 98视频在线噜噜噜国产| 亚洲精品女av网站| 久久影院在线观看| 国产一区二区三区免费视频| 久久精品99久久香蕉国产色戒| 日韩人体视频一二区| 色噜噜久久综合伊人一本| 91精品在线一区| 亚洲在线免费视频| 国产美女91呻吟求| 日韩经典一区二区三区| 青青青国产精品一区二区| 成人黄色激情网| 日韩一级裸体免费视频| 亚洲激情视频在线播放| 精品日韩视频在线观看| 欧美日韩人人澡狠狠躁视频| 国产精品色午夜在线观看| 91精品视频大全| 欧美性猛交xxxx乱大交3| 国产午夜精品免费一区二区三区| 欧美另类精品xxxx孕妇| 播播国产欧美激情| 精品国偷自产在线| 国产在线日韩在线| 久久久久久亚洲精品不卡| 欧美日韩亚洲网| 日韩中文字幕久久| 亚洲免费人成在线视频观看| 亚洲精品成人网| 91久久国产精品91久久性色| 国产精品久久久999| 亚洲男人av电影| 欧美亚洲成人xxx| 91老司机精品视频| 欧美乱大交做爰xxxⅹ性3| 人体精品一二三区| 久久99亚洲热视| 欧美电影免费在线观看| 欧美精品福利视频| 亚洲春色另类小说| 91精品国产高清久久久久久91| 日韩中文字幕精品| 午夜精品免费视频| 欧美精品福利视频| 不卡av在线播放| 91av视频在线| 亚洲精品成a人在线观看| 久久久久免费视频| 欧美日韩激情美女| 成人欧美一区二区三区黑人孕妇| 69av成年福利视频| 亚洲影院在线看| 日韩欧美亚洲成人| 亚洲视频精品在线| 国产在线精品播放| 久久影视三级福利片| 亚洲一区二区三区毛片| 国产精品久久久久77777| 欧美日韩在线免费观看| 久久综合伊人77777蜜臀| 日韩小视频在线观看| 中文字幕在线视频日韩| 一区二区三区精品99久久| 一区二区三区高清国产| 国产精品电影在线观看| 亚洲xxxx18| 国产91色在线播放| 亚洲午夜av久久乱码| 亚洲第一区在线观看| 国产精品18久久久久久首页狼| 91黑丝在线观看| 亚洲自拍偷拍福利| 国产91在线高潮白浆在线观看| 777午夜精品福利在线观看| 国产精品男人的天堂| 亚洲人成伊人成综合网久久久| 亚洲精选中文字幕| 亚洲白拍色综合图区| 国产精品老女人视频| 国产成人精品一区二区三区| 亚洲精品久久久久| 久久综合伊人77777尤物| 国产成人精品亚洲精品| 国产欧美日韩免费| 欧美黑人一区二区三区| 亚洲午夜av久久乱码| 国产精品久久久久久一区二区| 欧美日韩综合视频| 久久九九国产精品怡红院| 精品一区精品二区| 精品国偷自产在线| 国产一区二区在线播放| 中文字幕亚洲欧美日韩在线不卡| 成人国产精品日本在线| 久久精品国产综合| 欧美一级电影在线| 亚洲欧美日韩视频一区| 精品福利视频导航| 高清欧美性猛交xxxx黑人猛交| 日韩一区二区三区国产| 欧美黑人一级爽快片淫片高清| 亚洲xxxx妇黄裸体| 91免费欧美精品| 欧美另类极品videosbestfree| 欧美成年人视频网站| 伊人一区二区三区久久精品| 一本大道久久加勒比香蕉| 国产精品第一第二| 中文字幕精品在线视频| 日韩免费观看在线观看| 91久久在线播放| 国产精品视频最多的网站| 日本一区二区不卡| 日韩亚洲精品视频| 成人国内精品久久久久一区| 日韩欧美国产激情| 91免费在线视频网站| 亚洲三级 欧美三级| 国产精品第七十二页| 国产成人啪精品视频免费网| 精品中文字幕乱| 精品在线小视频| 97精品国产97久久久久久| 欧美丰满片xxx777| 91欧美视频网站|