如何检查xml文件以确定是否存在某些元素?例如,我有以下XML:
http://www.google.com/ig/api?weather=vilnius&hl=eng
我想检查“wind_condition”这个词是否存在:
if ("wind_condition") {do something}
答案 0 :(得分:4)
尝试:
XmlNodeList list = xml.SelectNodes(“// wind_condition”);
然后,只需检查返回的列表并进行相应的处理。
答案 1 :(得分:2)
您可以使用类似的内容来查询文档,使用Linq-to-Xml(未经测试):
XDocument xdoc = XDocument.Load("http://www.google.com/ig/api?weather=vilnius&hl=eng");
XElement[] myElements = xdoc.Root.Element("weather")
.Elements()
.Where(xelement => xelement.Element("wind_condition") != null)
.ToArray();
答案 2 :(得分:2)
这将确定文件是否包含单词wind_condition
。
if(xml.ToString().Contains("wind_condition"))
{
// do something
}
如果您需要元素wind_condition
if(xml.Descendants("wind_condition").Count() > 0)
{
// do something
}
答案 3 :(得分:2)
由于您的根节点是xml_api_reply,因此无论wind_condition是否存在,以下内容都应返回bool(我刚测试它并且它似乎正在工作)
var result = (from t in loadedData.Descendants("xml_api_reply")
select t.Descendants("wind_condition").Any()).Single();
if(result) // equals to if wind_condition exists
{
}