C# 使用XML的3种方法

C# 使用XML的3种方法,c#,xml,C#,Xml,在使用XML时,我需要使用不同的方法—LINQ到XML、流式处理、DOM。 有人能给我举个例子吗? 我只是想看看这两种方法之间的区别。不确定Linq,但流与dom的区别在于,dom方法在用户级API激活之前将整个XML文档解析到内存中,而基于流的方法在低级解析例程中引发“事件”。考虑如果在文件末尾处理一个语法错误的长XML文件,DOM vs.流式传输会发生什么;基于DOM的方法会在程序“获取数据”之前出错,而基于流的方法在抛出错误之前已经生成了一长串事件 DOM方法意味着API可以进行“整个

在使用XML时,我需要使用不同的方法—LINQ到XML、流式处理、DOM。
有人能给我举个例子吗?

我只是想看看这两种方法之间的区别。

不确定Linq,但流与dom的区别在于,dom方法在用户级API激活之前将整个XML文档解析到内存中,而基于流的方法在低级解析例程中引发“事件”。考虑如果在文件末尾处理一个语法错误的长XML文件,DOM vs.流式传输会发生什么;基于DOM的方法会在程序“获取数据”之前出错,而基于流的方法在抛出错误之前已经生成了一长串事件

DOM方法意味着API可以进行“整个文档查找”,例如在DOM/Xpath中,您可以说“//div”表示“文档中的所有div元素”,这在流式方法中要困难得多/不可能。另一方面,流式处理倾向于使用更少的内存,因为一次只需要将XML文档的一小部分保存在内存中


使用这些方法的API示例有SAX/XmlReader(用于基于流的API)和DOM/XSLT(用于基于DOM的API)。

不确定Linq,但流与DOM的不同之处在于,DOM方法在用户级API激活之前将整个XML文档解析到内存中,而基于流的方法会引发“事件”在低级解析例程期间。考虑如果在文件末尾处理一个语法错误的长XML文件,DOM vs.流式传输会发生什么;基于DOM的方法会在程序“获取数据”之前出错,而基于流的方法在抛出错误之前已经生成了一长串事件

DOM方法意味着API可以进行“整个文档查找”,例如在DOM/Xpath中,您可以说“//div”表示“文档中的所有div元素”,这在流式方法中要困难得多/不可能。另一方面,流式处理倾向于使用更少的内存,因为一次只需要将XML文档的一小部分保存在内存中


使用这些方法的API示例有:基于流的SAX/XmlReader,基于DOM的DOM/XSLT。

1)LinqToXml(又名XDocument/XElement)2)流:XmlReader/XmlWriter 3)DOM:XmlDocument/XmlElement。谷歌独立搜索这些关键词,已经有大量的信息/教程可用。谢谢。这就是我想要的。将其添加为答案,我将其标记为:1)LinqToXml(又名XDocument/XElement)2)Streaming:XmlReader/XmlWriter 3)DOM:XmlDocument/xmlement。谷歌独立搜索这些关键词,已经有大量的信息/教程可用。谢谢。这就是我想要的。把它作为一个答案,我会给它打分。