微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

webservice简单应用(天气预报)

using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Net;
using System.IO;

public class WebServiceWeather : System.Web.Services.WebService {

    public WebServiceWeather () {

        //如果使用设计的组件,请取消注释以下行
        //InitializeComponent();
    }
    [WebMethod]
    public string HelloWorld()
    {
        return "Hello World";
    }
    [WebMethod]
    public string Getweather(string city)
    {
        string weatherhtml = String.Empty;
        //转换输入参数的编码类型
        string mycity = System.Web.HttpUtility.UrlEncode(city,System.Text.UnicodeEncoding.GetEncoding("GB2312"));
        //初始化新的WebRequest
        HttpWebRequest webrt = (HttpWebRequest)WebRequest.Create("http://php.weather.sina.com.cn/search.php?city="+mycity);
        //返回对Internet请求响应
        HttpWebResponse webrs = (HttpWebResponse)webrt.GetResponse();
        //返回Internet资源返回数据流
        Stream stream = webrs.GetResponseStream();

        //读取数据流        StreamReader srm = new StreamReader(stream,System.Text.Encoding.Default);        //从头到尾,把数据读到weatherhtml中         weatherhtml = srm.ReadToEnd();        //关闭打开的资源        srm.Close();        stream.Close();        webrs.Close();         //针对不同的网站,以下开始部分和结束部分不同        //可以通过查看网站的源文件解决        int start = weatherhtml.IndexOf("天气状况 begin");        int end = weatherhtml.IndexOf("天气状况 end");        //返回一个html的table,预报城市天气        return weatherhtml.Substring(start + 14,end-start);    }}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐