golang xml解析

别人说我名字很长 · · 10915 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

xml是一个远程地址
<returnsms>
<returnstatus>Success</returnstatus>
<message>ok</message>
<remainpoint>150528</remainpoint>
<taskID>518334</taskID>
<successCounts>1</successCounts>
</returnsms>

解析

//xml的struct结构
type Duanxin struct {
	Returnstatus  string `xml:"returnstatus"`
	Message       string `xml:"message"`
	Remainpoint   string `xml:"remainpoint"`
	TaskID        string `xml:"taskID"`
	SuccessCounts string `xml:"successCounts"`
}

//发手机短信
func Send_duanxin(mobile int64, content string) (dx Duanxin, err error) {
	m := strconv.FormatInt(mobile, 10)
	if len(content) < 30 {
		return dx, errors.New("内容少于30个字符")
	}
	content = content + "【XX公司发送】"
	SendUrl := beego.AppConfig.String("sendurl")
	url := SendUrl + "&mobile=" + m + "&content=" + content

	resp, err := http.Get(url)
	if err != nil {
		return dx, err
	}
	defer resp.Body.Close()
	body, err := ioutil.ReadAll(resp.Body)
	if err != nil {
		return dx, err
	}

	err = xml.Unmarshal(body, &dx)//好方便,就这样就解析了xml,so关键是xml的结构
	return dx, err
}






有疑问加站长微信联系(非本文作者)

本文来自:开源中国博客

感谢作者:别人说我名字很长

查看原文:golang xml解析

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

10915 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传