gpt4 book ai didi

c# - 如何在 C# 中使用事件驱动的 SAX(用于 XML 的简单 API)解析器,还是使用 System.XML 命名空间更好?

转载 作者:行者123 更新时间:2023-11-30 17:20:24 25 4
gpt4 key购买 nike

在 C++ 中,我们可以将 msxml DLL 导入到我们的应用程序中,然后在我们应用程序的类中实现接口(interface) ISAXContentHandler 的方法。稍后创建一个 ISAXReader 对象并使用此类的实例调用 contentHandler,我们已经在其中为事件处理程序接口(interface)提供了实现。
同样,我想在 C# 中实现同样的事情。有没有办法在 C# 中做到这一点?我的意思是有什么方法可以在 C# 中进行基于事件的 SAX 解析。 我认为还有一种方法可以帮助我实现解析 XML 文档并将 XML 信息获取到我的应用程序。 我点击了链接“http://www.codeguru.com/csharp/csharp/cs_data/xml/article.php/c4221

这里使用了 DOM 并使用了 System.XML 命名空间。任何人都可以在这方面帮助我,----在 C# 中实现事件驱动的 XML 解析的方法是什么 或者我应该使用 System.XML 命名空间 (DOM)。如果存在 SAX 事件驱动方式,请让我知道如何在 C# 中实现

最佳答案

我认为在 .Net 框架中最接近 SAX 阅读器的是 XmlReader类(class)。它不是基于事件的,但它允许您以类似的方式遍历文档。看这个例子:http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.read.aspx

如果您需要最高性能,那么 XmlReader 是一个不错的选择,但还有其他提供更友好 api 的替代方案。 XmlDocument class 允许您将 xml 文档视为分层树,而 XDocument允许您使用 LINQ 来解析 xml。您需要哪一个取决于您喜欢哪种模型以及您的要求。

关于c# - 如何在 C# 中使用事件驱动的 SAX(用于 XML 的简单 API)解析器,还是使用 System.XML 命名空间更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4164031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com