我在解析XML文档以获取我想要的数据时遇到了一些麻烦。我有这个xml文档:
<root response="True">
<movie title="Spider-Man 2" year="2004" rated="PG-13" runtime="127 min"
genre="Action, Adventure" director="Sam Raimi"
actors="Tobey Maguire, Kirsten Dunst, James Franco, Alfred Molina"
metascore="83" type="movie" />
</root>
我遇到了一些麻烦,因为我想保存这些属性而且我不确定如何。我尝试过使用XmlElement
类和SelectSingeNode
方法,但我似乎无法使用它。我到目前为止尝试的是:
root.SelectSingleNode(@"\\movie[title]).InnerText;
但我一直收到以下错误:
System.Xml.XPath.XPathException'\\\\movie[@genre]' has an invalid token.
我希望能够保存,例如,电影的标题。我能做些什么不同的事情?
答案 0 :(得分:1)
尝试此操作以获取所需属性的值,例如标题:
root.SelectSingleNode("/root/movie/@title").Value
答案 1 :(得分:1)
这只是一个例子,我建议你做一个课程,但这应该适合你:
foreach (XmlElement movie in root.SelectNodes("//movie"))
{
string title = string.Empty;
string year = string.Empty;
//etc
title = movie.Attributes["title"] != null ? movie.Attributes["title"].Value : string.Empty;
//etc
}