1

从以下 xml 中,必须获取名称 Regression 和 Smoke,并在输出中写入 Regression,Smoke。

<categories>
        <category name="Regression" />
        <category name="Smoke" />
</categories>
4

2 回答 2

0

这是使用 linq to xml 的划痕:

XDocument doc = XDocument.Load(@"<path to your xml file>");
var names = doc.Elements("category").Select(e => (string)e.Attribute("name"));
var csv = string.Join(",", names);
于 2013-11-14T07:42:56.017 回答
0

如果您只想读取您的 xml 类别名称值并将它们写入以逗号作为分隔符的文本文件,您应该这样做:

///step1: read all the elements attribute value
XDocument doc = XDocument.Parse(xml);
var data = doc.Descendants("category")
                      .Select(s=>s.Attribute("name").Value)
                      .ToList();

///step2: write the read value to the file
using (StreamWriter writer = new StreamWriter("d://csv.txt", true))
{
    writer.WriteLine(string.Join(",", data));
}
//or simply
//File.WriteAllText("d://csv.txt", string.Join(",", data));

如果您想创建一个带有适当标题和所有内容的标准 CSV 文件,您可以找到大量代码,其中大部分都在 SO 中,以执行此操作。看看这个

于 2013-11-14T08:08:26.827 回答