我们需要使用Go语言解析一个大型XML文件。我们想要使用类似SAX的基于事件的算法,使用
现在,我们遍历文件并检测
如何仅解码特定
xml.NewDecoder()
和decoder.Token()
库调用。我们已经创建了适当的带有XML注释的结构类型。到目前为止,一切都很简单。现在,我们遍历文件并检测
xml.StartElement
标记。这里出现了问题。我们需要仅解码此起始标记的属性并继续进入其内容。如果我们调用token.DecodeElement()
,则在我们的情况下将“解码”或跳过整个内容。如何仅解码特定
StartElement
的属性并继续元素的正文?
token.DecodeElement()
。只需继续使用for { token, _ := dec.Token(); switch x := token.(type) { ...} }
循环即可。 - topskipx := token.Attr[3].Value
这样的东西... - eeqfor _, v := range x.Attr {...}
,对我来说已经足够好了。 - topskip