在C#的XmlReader中读取多个连续的XML文件

3

可能是重复问题:
有没有内置的方法来处理多个文件作为一个流?

我有大量连续数据被分成了多个文件。使用XmlDocument或LINQ不可行,因为这些文件很大,加载500GB到内存中不可行

因此,我必须使用XmlReader。

我的文件在XML意义上是分散的,例如:

文件1:

...
<Person>
  <FirstName>John</FirstName>
  <LastName>Doe</LastName>

文件2:
  <Email>john@doe.com</Email>
</Person>
...

一个可能的解决方案是我需要一种设置流的方式,例如:

using (XmlReader reader = XmlReader.Create(stream)) { ... }

使流源源不断地将每个文件连续地提供给XmlReader。因此,当流到达文件结尾时,它会自动提供下一个文件。我该如何实现这一点?这样对于XmlReader来说,它看起来只是在遍历一个大的流,但这个流由多个连续的文件组成。谢谢,Allison

我不想投票关闭,因为这是一个非常好的问题,但我的答案只会是链接的那个的复制粘贴。 - Bobson
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接