C# 递归解析XML文档

C# 递归解析XML文档,c#,.net,xml,string,C#,.net,Xml,String,我有一个XML文档,如下所示: <directory> <file><monitored>0</monitored> <xferStatus>1</xferStatus> <name>test1.txt</name> <size>7</size> <created>03/31/10 11:30:02 AM</created> <modified&g

我有一个XML文档,如下所示:

<directory>
<file><monitored>0</monitored>
<xferStatus>1</xferStatus>
<name>test1.txt</name>
<size>7</size>
<created>03/31/10 11:30:02 AM</created>
<modified>03/31/10 11:30:00 AM</modified>
<tPathList><tPath>http://hwcdn.net/p2f4h2b5/cds/testing/test1.txt</tPath>
</tPathList>
<tPath>http://hwcdn.net/p2f4h2b5/cds/testing/test1.txt</tPath>
<oPathList><oPath>http://hwcdn.net/p2f4h2b5/w9m3i4q9/test1.txt</oPath>
</oPathList>
<oPath>http://hwcdn.net/p2f4h2b5/w9m3i4q9/test1.txt</oPath>
<aPath></aPath>
</file>

<file><monitored>0</monitored>
<xferStatus>1</xferStatus>
<name>GenericDAO.cs</name>
<size>1843</size>
<created>03/31/10 11:41:10 AM</created>
<modified>03/31/10 11:41:10 AM</modified>
<tPathList><tPath>http://hwcdn.net/p2f4h2b5/cds/testing/GenericDAO.cs</tPath>
</tPathList>
<tPath>http://hwcdn.net/p2f4h2b5/cds/testing/GenericDAO.cs</tPath>
<oPathList><oPath>http://hwcdn.net/p2f4h2b5/w9m3i4q9/GenericDAO.cs</oPath>
</oPathList>
<oPath>http://hwcdn.net/p2f4h2b5/w9m3i4q9/GenericDAO.cs</oPath>
<aPath></aPath>
</file>
<nEntries>2</nEntries>
</directory>
尝试Linq到XML(System.XML.Linq命名空间)。示例:

XDocument document = XDocument.Parse(xml); // xml string
var query = from file in document.Descendants("file")
            select new
                {
                    Monitored = (int)file.Element("monitored"),
                    Name = (string)file.Element("name"),
                    Size = (int)file.Element("size")
                };

foreach (var file in query)
{
    Console.WriteLine("{0}\t{1}", file.Name, file.Size);
}
尝试Linq到XML(System.XML.Linq命名空间)。示例:

XDocument document = XDocument.Parse(xml); // xml string
var query = from file in document.Descendants("file")
            select new
                {
                    Monitored = (int)file.Element("monitored"),
                    Name = (string)file.Element("name"),
                    Size = (int)file.Element("size")
                };

foreach (var file in query)
{
    Console.WriteLine("{0}\t{1}", file.Name, file.Size);
}

你在问问题吗?什么是“回应”?你在问问题吗?什么是“回应”?