0
裸露与我和我的编程技能。我可以从我的C盘加载多个XML文档,但我需要找到一种方法将某些东西放入循环中,这样我就可以解析所有的XML而不仅仅是第一个。使用xmldocument c解析多个xml文件#
using System;
using System.IO;
using System.Xml;
public class Program
{
public static void Main()
{
string[] filePaths = Directory.GetFiles(@"C:\Users\r626890\Documents\BoxTesting\", "*.xml");
foreach (string files in filePaths)
Console.WriteLine("'{0}'",files);
Console.WriteLine();
XmlDocument doc = new XmlDocument();
string file = filePaths[0].ToString();
XmlNodeList xmlnode;
doc.Load(file);
XmlNodeList indexValue = doc.GetElementsByTagName("Index");
for (int i = 0; i < indexValue.Count; i++)
{
Console.WriteLine();
Console.WriteLine("Description: {0} ", indexValue[i].ChildNodes.Item(0).InnerXml);
Console.WriteLine("Value: {0} ", indexValue[i].ChildNodes.Item(1).InnerXml);
// Console.WriteLine("{0}",i);
}
xmlnode = doc.GetElementsByTagName("FileName");
for (int i = 0; i < xmlnode.Count; i++)
{
// Console.WriteLine("URI: {0} ", elemList[i].InnerXml.Split('_')[0]);
Console.WriteLine();
Console.WriteLine("Type: {0} ", xmlnode[i].InnerXml.Split('_')[1]);
Console.WriteLine();
Console.WriteLine("File Name: {0} ", xmlnode[i].InnerXml);
Console.WriteLine("------------------------------------------------------------");
Console.WriteLine("(Total # of files: {0})", ++i);
}
Console.ReadLine();
}
}
那肯定解决了它。将整个事物放在foreach循环中是有道理的。另一个问题...我如何保持显示每个文件的计数? – user3806259
如果你想保持计数,你必须使用:for(int i = 0; i
csblo
完美!感谢帮助! – user3806259