1

我使用了 XMLReader 格式:


XmlReader xmlReader = XmlReader.Create("batch.xml");
while (xmlReader.Read())
{
    //Keep reading
    if (xmlReader.Name.Equals("Keyword") && (xmlReader.NodeType == XmlNodeType.Element))
    {
        // get attribute from the Xml element here
        string keywords = xmlReader.GetAttribute("name"); 
    }
}

如何将“关键字”转换为字符串 []?

4

2 回答 2

1

这取决于。

如果您的 XML 有一个name包含多个关键字的属性,请调用String.Split,如下所示:

string[] keywords = xmlReader.GetAttribute("name").Split(' ');

如果您有多个name属性或Keyword元素,请创建一个List<string>并在循环中填充它,如下所示:

List<string> keywords = new List<string>();
XmlReader xmlReader = XmlReader.Create("batch.xml");
while (xmlReader.Read()) {
    //Keep reading
    if (xmlReader.Name.Equals("Keyword") && (xmlReader.NodeType == XmlNodeType.Element))
        keywords.Add(xmlReader.GetAttribute("name")); 
}

如果你真的需要一个string[],你可以打电话keywords.ToArray()

于 2009-11-04T01:09:48.377 回答
0

由于您使用的是 a XmlReader,因此您不能一次拥有所有节点。您需要创建一个List<string>集合,填充并返回它。

于 2009-11-04T01:10:08.133 回答