想做个天气预报用webxml里的WEB服务,WEB服务返回的是这样的数据:
  
<?xml version="1.0" encoding="utf-8" ?> 
- <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://WebXml.com.cn/">
  <string>广东</string> 
  <string>广州</string> 
  <string>59287</string> 
  <string>59287.jpg</string> 
  <string>2012-12-19 20:03:32</string> 
  <string>15℃/17℃</string> 
  <string>12月20日 小雨</string> 
  <string>无持续风向微风</string> 
  <string>7.gif</string> 
  <string>7.gif</string> 
  <string>今日天气实况:气温:12℃;风向/风力:西南风 1级;湿度:77%;空气质量:良;紫外线强度:最弱</string> 
  <string>穿衣指数:建议着薄型套装或牛仔衫裤等春秋过渡装。年老体弱者宜着套装、夹克衫等。过敏指数:天气条件极不易诱发过敏,有降水,出行注意携带雨具。运动指数:有降水,推荐您在室内进行健身休闲运动;若坚持户外运动,须注意携带雨具并注意避雨防滑。洗车指数:不宜洗车,未来24小时内有雨,如果在此期间洗车,雨水和路上的泥水可能会再次弄脏您的爱车。晾晒指数:有降水,不适宜晾晒。若需要晾晒,请在室内准备出充足的空间。旅游指数:温度适宜,又有小雨和微风作伴,会给您的旅行带来意想不到的景象,适宜旅游,可不要错过机会呦!路况指数:有降水,路面潮湿,车辆易打滑,请小心驾驶。舒适度指数:温度适宜,风力不大,您在这样的天气条件下,会感到比较清爽和舒适。空气污染指数:气象条件有利于空气污染物稀释、扩散和清除,可在室外正常活动。紫外线指数:属弱紫外线辐射天气,无需特别防护。若长期在户外,建议涂擦SPF在8-12之间的防晒护肤品。</string> 
  <string>11℃/22℃</string> 
  <string>12月21日 小雨</string> 
  <string>无持续风向微风转北风4-5级</string> 
  <string>7.gif</string> 
  <string>7.gif</string> 
  <string>9℃/19℃</string> 
  <string>12月22日 小雨转阴</string> 
  <string>北风4-5级转3-4级</string> 
  <string>7.gif</string> 
  <string>2.gif</string> 
  <string>广州是广东省的省会,是中国南方最大的海滨城市,广州位于东经113。17`,北纬23。8`,地处中国大陆南部,广东省南部,珠江三角洲北缘。广州临南海,邻近香港特别行政区,是中国通往世界的南大门,广州属丘陵地带。中国的第三大河----珠江从广州市中心穿流而过。广州是一座历史文化名城。相传在远古时候,曾有五位仙人,身穿五色彩服、骑着嘴衔稻穗的五色仙羊降临此地,把稻穗赠给百姓,祝愿这里永无饥荒。从此,广州便有“羊城”、“穗城”的美称,“五羊”也成为广州的象征。广州既是中国也是世界名城,又是一座古城,因历史上有五羊仙子降临献稻穗的故事,广州又称为“羊城”和“穗城”,简称“穗”;广州一年四季如春、繁花似锦,除夕迎春花市闻名海内外,故又有“花城”的美誉。广州地处低纬,属南亚热带季风气候区。地表接受太阳辐射量较多,同时受季风的影响,夏季海洋暖气流形成高温、高湿、多雨的气候;冬季北方大陆冷风形成低温、干燥、少雨的气候。年平均气温为21.4-21.9度,年降雨量平均为1623.6-1899.8mm,北部多于南部。1982年,广州被国务院选定为全国首批历史文化名城之一,是我国重点旅游城市。1999年1月,广州被评为优秀旅游城市。景观:白云山、莲花山、南海神庙、佛山祖庙、广州动物园等。</string> 
  </ArrayOfString>比如获取节点  <string>今日天气实况:气温:12℃;风向/风力:西南风 1级;湿度:77%;空气质量:良;紫外线强度:最弱</string> 中今天的风向/风力 只想要XX风 X级,该怎么截取?用substring 不好控制因为前面的温度有可能是10几度也有可能是几度还有可能是-的度数 风的种类也有2个字的或者3个字的。
请问该怎么截取比较好?初学者只想到了截取 还有其他办法吗?谢谢

解决方案 »

  1.   

    用Split方法即可,这个应该比较固定:
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(Server.MapPath("~/test.xml"));
    string r = xmlDoc.GetElementsByTagName("string")[10].InnerText;
    r = r.Split(';', ':')[4];
    Response.Write(r);
    西南风 1级
      

  2.   

    这么写也可以:
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(Server.MapPath("~/test.xml"));
    XmlNamespaceManager manager = new XmlNamespaceManager(xmlDoc.NameTable);
    manager.AddNamespace("ns", "http://WebXml.com.cn/");
    string r = xmlDoc.SelectSingleNode(@"//ns:string[11]", manager).InnerText;
    r = r.Split(';', ':')[4];
    Response.Write(r);