我正在寻找最快的方法来计算一个巨大的xml文件(120MB)中的一些标签
long Quantity;
XPathDocument xDocData = new XPathDocument(str_File_path);
XPathNavigator xNavData = xDocData.CreateNavigator();
//Option 1
XPathExpression xExp = xNavData.Compile("sum(Tag/Value)");
Quantity = Convert.ToInt64(xNavData.Evaluate(xExp));
//Option 2
XPathNodeIterator xNodeIter = xNavData.Select(xExp);
while(xNodeIter.MoveNext())
{
Quantity += xNodeIter.Current.ValueAsLong;
}有什么建议吗?
提前问候和感谢
发布于 2011-05-14 02:41:00
您只是希望从这个文件中获取计数,还是实际上需要将其内容用于其他目的?如果您只需要计数,而文件又那么大,那么使用SAX Parser、捕获相关节点上的事件并在这些事件上递增可能更有效。
https://stackoverflow.com/questions/3531188
复制相似问题