我正在嘗試閱讀這段XML。閱讀XML屬性
我不知道我怎麼可能只讀與價值= 「2012-11-15Z」
所以下面的一個節點期:
這是我使用的代碼
using (XmlReader reader = XmlReader.Create("http://datapoint.metoffice.gov.uk/public/data/val/wxfcs/all/xml/351352?res=3hourly&key=99b9f578-ad3d-446c-9d29-0bbee028b483"))
{
reader.MoveToContent();
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element
&& reader.Name == "Period")
{
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element &&
reader.Name == "Rep")
{
first.Text = reader.GetAttribute("T");
}
}
}
}
}
什麼是我只讀這個節點?
我應該寫
if (reader.NodeType == XmlNodeType.Element && reader.Name == "Period" && reader.GetAttribute("value") == "2012-11-15Z")
這似乎並沒有工作..
有人能幫助我嗎?
那麼我將如何獲得屬性「T」?因爲這是返回所有的值,如360 570 720等。 – Kiwimoisi
@Demipouce看到更新的答案。它將返回'List',其中包含選定時間段內所有「Rep」元素的'T'屬性的值。 *順便說一句*似乎xpath要慢http://blog.dreamlabsolutions.com/post/2008/12/04/LINQ-to-XML-and-LINQ-to-XML-with-XPath-performance-review.aspx –
好吧 !我看到了,對不起,我剛剛在關於這些屬性的時刻有點困惑。 因此,它返回我可以用作普通列表的列表? – Kiwimoisi