1

我有一个xml文件如下:

<Root>
  <Folder1>
    <file>AAA</file>
    <file>BBB</file>
    <file>CCC</file> 
  </Folder1>
  <Folder2>
    <file>AAA</file>
    <file>BBB</file> 
    <file>CCC</file> 
  </Folder2>
</Root>

我需要字符串列表中的所有父母,我尝试使用

using (XmlTextReader reader = new XmlTextReader(pathFiles))              
{                    
   reader.ReadToFollowing("file");
   string files = reader.ReadElementContentAsString();
}

所以,“files”变量只包含“AAA”,

reader.ReadElementContentAsString()不接受列表。

有没有办法将输出提取为{“AAA”,”BBB”,”CCC”, AAA”,”BBB”,”CCC”}

4

2 回答 2

4
XDocument doc=XDocument.Load(xmlPath);
List<string> values=doc.Descendants("file")
                       .Select(x=>x.Value)
                       .ToList();
于 2013-10-10T06:57:55.780 回答
2

试试这个

XDocument xdoc = XDocument.Parse(xml);
var filesArray = xdoc.Elements()
    .First()
    .Descendants()
    .Where(x => x.Name == "file")
    .Select(x => x.Value)
    .ToArray();
于 2013-10-10T06:58:00.593 回答