我有一个很大的维基百科转储,我想将其分成不同的文件(每篇文章一个文件)。我写了一个 VB 应用程序来为我做这件事,但它很慢,经过几个小时的切割后就废了。我目前正在使用另一个应用程序将文件分成较小的 50mb block ,但这需要很长时间(每个 block 20-30 分钟)。如果我这样做的话,我应该能够将它们中的每一个单独切割。
有没有人对更快地剪切此文件的方法有任何建议?
最佳答案
使用 C# 执行此操作的最简单方法是使用 XmlReader。您可以单独使用 XmlReader 以实现最快的实现,也可以与新的 LINQ XNode 类结合使用以实现性能和易用性的完美结合。有关示例,请参阅此 MSDN 文章:http://msdn.microsoft.com/en-us/library/system.xml.linq.xnode.readfrom.aspx .
您应该能够修改该示例,一次只将一个文档的节点保存在内存中,然后将其作为文件写回。它应该表现良好并且适用于非常大的文件。
关于xml - 将大型 XML 文件切割成小块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4841315/