1

是否XDocument.Load将整个文件加载到内存中?如果不是,我应该使用哪种方法来做到这一点?

我需要有一个临时文件的内容,即使在文件被删除或更改后,也可以随时进行处理。这些文件通常很小,因此将整个内容放在内存中不是问题。

4

1 回答 1

3

是的,XDocument.Load("filePath")将立即将完整文件加载到内存中。

MSDN http://msdn.microsoft.com/en-us/library/bb343181.aspx说:

此方法使用底层 XmlReader 将 XML 读入 XML 树。

要通过LINQ to XML提供全部功能XDocument(这是方法的结果) ,必须立即构建。LoadXML tree

注意:对内存中数据的任何操作都不会影响文件,反之亦然。document.Save(path)必须调用显式......所以Load才会真正将数据读入内存

于 2012-11-18T15:41:11.933 回答