原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zhangkui.blog.51cto.com/1796259/497324

本文使用Winform (C#)调用互联网上公开的WebServices(http://www.webxml.com.cn/WebServices/WeatherWebService.asmx)来实现天气预报,该天气预报 Web 服务,数据来源于中国气象局 http://www.cma.gov.cn/ ,数据每2.5小时左右自动更新一次,准确可靠。包括 340 多个中国主要城市和 60 多个国外主要城市三日内的天气预报数据。

程序效果:

实现步骤:

1、引入Web服务。在VS中项目上右击→添加服务引用。

2、在弹出的添加服务引用窗口,录入web服务地址和引用后的命名空间。

3、布置winform窗体界面,实现代码。核心代码如下:

  1. private void button1_Click_1(object sender, EventArgs e)
  2. {
  3. Weather.WeatherWebServiceSoapClient w = new Weather.WeatherWebServiceSoapClient("WeatherWebServiceSoap");
  4. //把webservice当做一个类来操作
  5. string[] s = new string[23];//声明string数组存放返回结果
  6. string city = this.textBox1.Text.Trim();//获得文本框录入的查询城市
  7. s = w.getWeatherbyCityName(city);
  8. //以文本框内容为变量实现方法getWeatherbyCityName
  9. if (s[8] == "")
  10. {
  11. MessageBox.Show("暂时不支持您查询的城市");
  12. }
  13. else
  14. {
  15. pictureBox1.Image = Image.FromFile(@"d:\image\" + s[8] + "");
  16. this.label4.Text =s[1]+" "+s[6];
  17. textBox2.Text = s[10];
  18. }
  19. }

4、天气图标可至【http://www.webxml.com.cn/images/weather.zip】下载。

5、Web服务的各方法参数直接访问【http://www.webxml.com.cn/WebServices/WeatherWebService.asmx】查询,从而实现其它丰富功能,如未来天气预报等。

本文出自 “zhangkui的博客” 博客,请务必保留此出处http://zhangkui.blog.51cto.com/1796259/497324

asp.net与上述操作方法相同。

weather.WeatherWebServiceSoapClient w = new weather.WeatherWebServiceSoapClient("WeatherWebServiceSoap");
        string[] s = new string[23];

s = w.getWeatherbyCityName(this.city.Text.Trim());
        if (s[8] == "")
        {
            Response.Write("暂时不支持您查询的城市");
        }
        else
        {
            for (int i = 0; i < s.Length; i++)
            {
                this.info.InnerHtml+="s["+i+"]:"+ s[i]+"<br/>";
            }
        }

注:s是一个具有23个元素的数据,如下:

s[0]:江苏
s[1]:苏州
s[2]:58357
s[3]:58357.jpg
s[4]:2013-6-28 15:11:48
s[5]:23℃/28℃
s[6]:6月28日 阵雨转多云
s[7]:东风3-4级
s[8]:3.gif
s[9]:1.gif
s[10]:今日天气实况:气温:24℃;风向/风力:东风 2级;湿度:79%;空气质量:良;紫外线强度:弱
s[11]:穿衣指数:热,适合穿T恤、短薄外套等夏季服装。过敏指数:极不易发,无需担心过敏,可放心外出,享受生活。运动指   数:较不宜,有降水,推荐您在室内进行休闲运动。洗车指数:不宜,今天有雨,雨水和泥水会弄脏爱车。晾晒指数:不太适宜,降水可能会淋湿衣物,不适宜晾晒。旅游指数:适宜,细雨中游玩别有情调,但要记得带雨具。路况指数:潮湿,有降水,路面潮湿,请小心驾驶。舒适度指数:较舒适,白天降雨,有些热。空气污染指数:良,气象条件有利于空气污染物扩散。紫外线指数:弱,辐射较弱,涂擦SPF12-15、PA+护肤品。
s[12]:24℃/29℃
s[13]:6月29日 阵雨转中雨
s[14]:东南风3-4级
s[15]:3.gif
s[16]:8.gif
s[17]:25℃/30℃
s[18]:6月30日 中雨转阵雨
s[19]:南风3-4级转4-5级
s[20]:8.gif
s[21]:3.gif
s[22]:苏州位于长江下游,太湖之滨,鱼米之乡,面积8488平方公里。下辖张家港,常熟,太仓,昆山,吴县,吴江六县市,人口575万。其为亚热带季风气候,四季分明,全年平均气温15-17度,1月最低气温-9.4度,7、8月份最高气温达38.6度;全年平均降水量偏高,近1076.2毫米,无霜期在230天左右。苏州全市地势低平,平原占总面积的54%,平均海拔4米左右,东南部地势低洼,西南部多小山丘。吴县穹窿山主峰高351.7米,为全市最高点。境内河流纵横,湖泊众多,京杭运河贯通南北,望虞河、娄江、太浦河等连接东西,阳澄湖、昆承湖、淀山湖等散布其间,太湖水面90%左右在苏州市境内,全市水面占总面积的42.5%,是著名的江南水乡。苏州古城内现有河道35公里、桥梁168座,被誉为"东方威尼斯"。苏州园林甲天下,已被列入世界文化遗产名录,在中国四大名园中,苏州就占有两席(拙政园、留园)。“吴中第一名胜”虎丘,2500多年的历史形成的深厚的文化积淀,成为游客来苏州旅游的必游之地。而唐朝诗人张继的一首《枫桥夜泊》,使古今游客都要来枫桥,闻寒山寺的钟声。景观:苏州,拙政园,网师园,狮子林,留园,沧浪亭,怡园枫桥,寒山寺

查询本天气预报Web Services支持的国内外城市或地区信息的更多相关文章

  1. Jersey the RESTful Web Services in Java

    Jersey 是一个JAX-RS的实现, JAX-RS即Java API for RESTful Web Services, 支持按照表述性状态转移(REST)架构风格创建Web服务. REST 中最 ...

  2. Delphi 6 Web Services初步评估之三(转)

    Delphi 6 Web Services初步评估之三(转)   Delphi 6 Web Services初步评估之三(转)★ 测试总体印象:在整个测试中,对Delphi 6创建的Web Servi ...

  3. 在 IBM RAD 平台上基于 JAX-WS 开发 Web Services服务器端,客户端

    原文地址:https://www.ibm.com/developerworks/cn/websphere/library/techarticles/1305_jiangpl_rad/1305_jian ...

  4. Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么(转)

    Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么?修改 建站有很多技术,如 HTML.HTML5.X ...

  5. 使用 Spring 3 来创建 RESTful Web Services

    来源于:https://www.ibm.com/developerworks/cn/web/wa-spring3webserv/ 在 Java™ 中,您可以使用以下几种方法来创建 RESTful We ...

  6. (转) Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么?

    Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么? 建站有很多技术,如 HTML.HTML5.XHT ...

  7. 跟我一起学WCF(3)——利用Web Services开发分布式应用

    一.引言 在前面文章中分别介绍了MSMQ和.NET Remoting技术,今天继续分享.NET 平台下另一种分布式技术——Web Services 二.Web Services 详细介绍 2.1 We ...

  8. 使用 Spring 3 来创建 RESTful Web Services(转)

    使用 Spring 3 来创建 RESTful Web Services 在 Java™ 中,您可以使用以下几种方法来创建 RESTful Web Service:使用 JSR 311(311)及其参 ...

  9. 使用LoadRunner对Web Services进行调用--Add Service Call

    利用LoadRunner对Web Services进行测试时,通常有三种可供采用的方法: 在LoadRunner的Web Services虚拟用户协议中,[Add Service Call] 在Loa ...

随机推荐

  1. Binary Tree Paths 解答

    Question Given a binary tree, return all root-to-leaf paths. For example, given the following binary ...

  2. MongoDB基本命令随便敲敲

    1,mongoDB状态,版本,当前连接的数据库名称

  3. [置顶] 教你如何搭建RobotFramework环境

    看到这篇文章的朋友,相信已经知道RobotFramework是干什么的了,我这里就不再赘述了. 搭建步骤: 1. 下载安装Python,下载地址http://www.python.org/getit/ ...

  4. wget命令2(转载)

    wget是一个从网络上自动下载文件的自由工具.它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理. 所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行.这意味这你可以登录系统,启 ...

  5. PHP 超强过滤函数

    PHP 超强过滤函数 你有每次要过滤的时候总是去翻曾经的过滤代码的时候么? 你有搜索过怎样防过滤,防攻击的PHP解决方法么? 你有对全然遵循'过滤输入,避免输出',Web界经典说辞么?     事实上 ...

  6. VS2010+ICE3.5运行官方demo报错----std::bad_alloc

    纠结了一晚上,在release版本下运行没问题,一到debug就报错,卡在 Ice::ObjectAdapterPtr adapter = ic->createObjectAdapterWith ...

  7. 提交App,请求Apple加急审核

    转载自:http://blog.csdn.net/showhilllee/article/details/19541493 提交完毕后进入加急审核页面. 链接:https://developer.ap ...

  8. linux下Mysql 的安装、配置、数据导入导出

    MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),虽然功能未必很强大,但因它的免费开源而广受欢迎. 这次,接着上一篇<CentOs minimal安装和开发环境部署>,讲下L ...

  9. .NET 基础串讲

    C#基础 .NET介绍 —计算机发展史 第一代语言:机器语言 0101 第二代语言:汇编语言, 用一些简洁的英文字母.符号串来替代一个特定指令的二进制串 第三代语言:接近于数学语言或人的自然语言,同时 ...

  10. 嵌套iframe中的HTML的文档解析类型

    问题:页面整个刷新时,IE11输入框显示的宽度和高度正常,对页面中的iframe部分刷新时,IE11输入框的宽度和高度就变小了. 原因:网页的头部定义了文档类型<!DOCTYPE html> ...