为了账号安全,请及时绑定邮箱和手机立即绑定

使用 xmlns 命名空间解组 xml 文档

使用 xmlns 命名空间解组 xml 文档

Go
红颜莎娜 2021-11-22 15:33:32
我想解组一个看起来像的 RDF 文档:<?xml version="1.0" encoding="WINDOWS-1252"?><rdf:RDF  xmlns:owl       = "http://www.w3.org/2002/07/owl#"   xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"   <!-- other xml element --></rdf:RDF>我正在使用这种类型来解压:type wsdlDoc struct {    XMLName xml.Name `xml:"rdf:RDF"`    Name    string   `xml:"grounding:hasAtomicProcessGrounding"`}执行此操作的代码片段:// you should import "github.com/rogpeppe/go-charset/charset"// and _ "github.com/rogpeppe/go-charset/data"dec := xml.NewDecoder(file)dec.CharsetReader = charset.NewReadervar v wsdlDocerr = dec.Decode(&v)if err != nil {    panic(err)}当我运行代码时,恐慌会打印此错误:panic: expected element type <rdf:RDF> but have <RDF>如何处理这种解组的情况?
查看完整描述

1 回答

?
子衿沉夜

TA贡献1828条经验 获得超3个赞

命名空间由它们的 URL 表示,并用空格与名称分开,所以你的结构应该更像


type wsdlDoc struct {

    XMLName xml.Name `xml:"http://www.w3.org/1999/02/22-rdf-syntax-ns# RDF"`

    // ...

}

游乐场示例:http : //play.golang.org/p/tYVm2h6cIm。


查看完整回答
反对 回复 2021-11-22
  • 1 回答
  • 0 关注
  • 147 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信