将数据从XML读入数组

时间:2013-01-16 08:05:42

标签: c# arrays xml

我有一个XML文件,我在其中保存临时数据(索引和列名称),如下所示:

-<NewDataSet> 
    -<USERROWCOL> 
          <COL>2</COL> 
          <Name>Name</Name> 
     </USERROWCOL> 
    -<USERROWCOL> 
          <COL>8</COL> 
          <Name>PDC</Name> 
     </USERROWCOL>
 <NewDataSet>

我希望使用C#读取数组中的所有COL,就像它将是一个数组({2, 8})。任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:10)

这是一个LINQ to XML版本:

string[] arr = XDocument.Load(@"C:\xxx.xml").Descendants("Name")
                        .Select(element => element.Value).ToArray();

这将从文档中提供所有Name元素。

答案 1 :(得分:8)

LINQ to XML使这很容易:

var document = XDocument.Load("file.xml");
var array = document.Descendants("COL").Select(x => (int) x).ToArray();

假设您只需要文档中的每个 COL元素,并且每个元素的值都是整数。