解析XML,报告未知标签/属性

时间:2019-05-31 13:34:08

标签: xml go xml-parsing

我需要解析一个定义明确的XML文件。 我定义了结构并使用了

err = xml.Unmarshal(byteValue, &mystruct)

效果很好。但是我需要检测未知的标签和属性。

当我看到未知标签时,我想向用户报告完整的标签“原样”。未知属性也是如此。

我如何在Go中做到这一点?

1 个答案:

答案 0 :(得分:0)

您可以使用xmlquery来解析XML文件并提取数据,而无需定义XML数据结构,它是一个XPath查询包。

f, err := os.Open("../books.xml")
doc, err := xmlquery.Parse(f)
list:=xmlquery.Find(doc, "//book//author")