文本文件包含
等属性 <file loc="NEEDTHIS" id="140359"/>
<file loc="NEEDTHIS2" id="137406"/>
<file loc="NEEDTHIS3" id="137545"/>
如何获取文件位置并将其存储在字符串数组中?
预期产出:
NEEDTHIS
NEEDTHIS2
NEEDTHIS3
答案 0 :(得分:1)
将文件加载到XDocument
对象中,然后使用LINQ从每个loc
元素中提取file
属性,如下所示:
var doc = new XDocument();
doc.Load("path to your XML file");
var files = from file in doc.Descendants("file")
select (string)service.Element("loc");
答案 1 :(得分:1)
XDocument可以做到:
var paths = XDocument.Load("file.xml")
.Descendants("file")
.Select(n => n.Attribute("loc").Value);
Console.WriteLine(string.Join(", ", paths));
分解为foreach循环:
var doc = XDocument.Load("file.xml");
var paths = new List<string>();
foreach (var file in doc.Descendants("file"))
paths.Add(file.Attribute("loc").Value); // or just Console.WriteLine(file.Attribute("loc").Value);
Console.WriteLine(string.Join(", ", paths));