好记性不如乱笔头,在这里记录一下 golang代码
package main
import (
"encoding/xml"
"fmt"
"io/ioutil"
)
type Mysql struct {
Host string `xml:"host"`
Database string `xml:"database"`
User string `xml:"user"`
Pwd string `xml:"pwd"`
}
type Redis struct {
Host string `xml:"host"`
Port int32 `xml:"port"`
}
type Config struct {
Db Mysql `xml:"mysql"`
Cache Redis `xml:"redis"`
Interface string `xml:"interface"`
User string `xml:"user"`
Key string `xml:"key"`
}
func main() {
content, ferr := ioutil.ReadFile("/home/gowork/src/demo/x.xml")
if ferr != nil {
//handler
}
r := Config{}
err := xml.Unmarshal(content, &r)
if err != nil {
//handler
}
fmt.Println(r)
fmt.Println(r.Db.Database,r.Interface,r.Cache.Host)
}
xml代码
<?xml version='1.0' encoding='UTF-8'?>
<configs>
<mysql>
<host>127.0.0.1:3306</host>
<database>zpt_cat</database>
<user>zpt_user</user>
<pwd>dfadkdfk</pwd>
</mysql>
<redis>
<host>127.0.0.1</host>
<port>3333</port>
</redis>
<interface>https://www.xxx.com/interface.php</interface>
<user>150528</user>
<key>518334</key>
</configs>