用于 C++ 的 SAX Api从 XML 文件中读取元素名称和值?
谁能告诉我如何使用 Xerces-C++ v2.8.0 中的 SAX API 获取标签名称和标签值?
Can anyone tell me how can I get a tag name and tag value using the SAX API in Xerces-C++ v2.8.0?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
SAX 的工作原理是解析文件并向您发送事件,以回调您提供的方法的形式。 XML 文件中可能发生的每个重要对象都有“事件”,例如开始标记、字符、结束标记等。由您来跟踪您所在的位置并确定哪个事件是对你有意义。
您可以通过子类化 org.xml.sax.helpers.DefaultHandler 并覆盖感兴趣事件的方法来提供回调。例如,您可以为 XML 中的每个标记调用
startElement()
。您查看每个标记,如果您感兴趣,则可以检查其属性,这些属性作为参数提供给startElement()
方法。SAX works by parsing the file and sending you events, in the form of callbacks to methods you provide. There are "events" for each significant object that can occur in an XML file, such as start-tag, characters, end-tag, etc. It is up to you to keep track of where you are and determine which of the events is meaningful to you.
You provide the callbacks by subclassing
org.xml.sax.helpers.DefaultHandler
and overriding the methods for the events of interest. So, for example, you get a call tostartElement()
for every tag in the XML. You look at each tag, and if it's of interest then you can examine its attributes, which were provided as a parameter to thestartElement()
method.