我遇到了一个XML文件和c#的问题。 xml文件如下所示:
<data>
<weather>
//some stuff
</weather>
<weather>
//some stuff
</weather>
<weather>
//some stuff
</weather>
<weather>
//some stuff
</weather>
现在我的问题:
我只需要导航到第三个节点。现在我觉得我可以解决这个问题:
act_tempereature = wData.Root.Element("weather").Element("maxtempC").Value;
但是,当然,它只选择具有该特定名称的Document目录中的第一个Element。那么我该如何导航到第3天或第2天?
如果已经提出这个问题,我很抱歉,因为我没有找到任何东西(也许我只是搜索了错误的关键字:/)
希望你能帮忙
答案 0 :(得分:0)
您可以使用Elements()
复数s
来获取具有特定名称的所有元素:
act_tempereatures = wData.Root
.Elements("weather")
.Elements("maxtempC")
.Select(o => o.Value);
然后只需使用foreach
循环来获取每个温度值。或者,如果您只需要一个特定位置的元素,请说第3个,尝试使用Skip()
和Take()
:
act_tempereature3 = wData.Root
.Elements("weather")
.Skip(2)
.Take(1)
.Elements("maxtempC")
.Select(o => o.Value);