在c#winform中怎么查询xml节点的内容

youxia1206 2009-03-14 02:20:23

<weath>
<date>2009-2-6</date>
<weather>小雨</weather>
<temp>8℃/6℃</temp>
<wind>东北风3-4级</wind>
<hum>80%</hum>
</weath>
怎么根据date的值把上面的内容读到textBox中去
...全文
202 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
orain 2009-03-14
  • 打赏
  • 举报
回复
XmlDocument xDoc = new XmlDocument();
string xmlStr = "<weath><date>2009-2-6 </date><weather>小雨 </weather><temp>8℃/6℃ </temp><wind>东北风3-4级 </wind><hum>80% </hum></weath>";
xDoc.LoadXml("<root>" + xmlStr + "</root>"); //因为你有多个 <weath> 节点,所以要加一个根节点
XmlNode node = xDoc.SelectSingleNode("//weath[contains(date, '2009-2-6')]");
string weather = node.SelectSingleNode("weather").InnerText;
//你也可以用一个 foreach 语句循环获取值,最好能保证子节点的顺序一致,如
foreach(XmlNode child in node.ChildNodes)
格拉 2009-03-14
  • 打赏
  • 举报
回复
呃..
cppfaq 2009-03-14
  • 打赏
  • 举报
回复
授人以渔:)

XPath 教程
http://www.w3school.com.cn/xpath/index.asp
莫逸洛 2009-03-14
  • 打赏
  • 举报
回复
少发一句 前面加上 List<string> list = new List<string>();
莫逸洛 2009-03-14
  • 打赏
  • 举报
回复
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("AA.xml");
XmlNode root = xmlDoc.SelectSingleNode("weath");
XmlNodeList xnl = xmlDoc.SelectSingleNode("weath").ChildNodes;
for (int i = 0; i < xnl.Count; i++)
{
XmlElement xe = (XmlElement)xnl.Item(i);
list.Add(KeyDes.JieMi(xe.GetAttribute("date")));
......
}
return list;
youxia1206 2009-03-14
  • 打赏
  • 举报
回复
还有其他方法吗、

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧