我想解组一个看起来像的 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。
- 1 回答
- 0 关注
- 147 浏览
添加回答
举报
0/150
提交
取消