asp.net的實時天氣及24小時天氣預報(C#) 修改其中的url獲得其他城市的天氣情況 
如廣州為: 
http://weather.yahoo.com/forecast/CHXX0037_c.html 
注意僅適用于獲得yahoo上的天氣預報 
GetWeather.aspx 
----------------------------------- 
<%@ Page language="c#" Codebehind="GetWeather.aspx.cs" AutoEventWireup="false" Inherits="test.GetWeather" %> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > 
<HTML> 
    <HEAD> 
        <title>GetWeather</title> 
        <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0"> 
        <meta name="CODE_LANGUAGE" Content="C#"> 
        <meta name="vs_defaultClientScrjavaScript"> 
        <meta name="vs_targetSchema" content="    </HEAD> 
    <body> 
        <form id="GetWeather" method="post" runat="server"> 
            <FONT face="宋體"> 
                <P> 
                    <asp:Label id="lblWeather" runat="server">Weather</asp:Label></P> 
                <P> 
                    <asp:Button id="btnGet" runat="server" Text="Get Weather"></asp:Button></P> 
                <P> 
                    <asp:Label id="Weather2" runat="server">24小時天氣</asp:Label></P> 
                <P> 
                    <asp:Button id="btnGet2" runat="server" Text="天氣預報"></asp:Button></P> 
            </FONT> 
        </form> 
    </body> 
</HTML> 
getWeather.aspx.cs 
--------------------------------------- 
using System; 
using System.Collections; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Web; 
using System.Web.sessionState; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.HtmlControls; 
using System.Net; 
using System.IO; 
namespace test 
{ 
    public class GetWeather : System.Web.UI.Page 
    { 
        PRotected System.Web.UI.WebControls.Label lblWeather; 
        protected System.Web.UI.WebControls.Label Weather2; 
        protected System.Web.UI.WebControls.Button btnGet2; 
        protected System.Web.UI.WebControls.Button btnGet; 
     
        private void Page_Load(object sender, System.EventArgs e) 
        { 
            // Put user code to initialize the page here 
        } 
        #region Web Form Designer generated code 
        override protected void OnInit(EventArgs e) 
        { 
            // 
            // CODEGEN: This call is required by the ASP.NET Web Form Designer. 
            // 
            InitializeComponent(); 
            base.OnInit(e); 
        } 
         
        /// <summary> 
        /// Required method for Designer support - do not modify 
        /// the contents of this method with the code editor. 
        /// </summary> 
        private void InitializeComponent() 
        {     
            this.btnGet.Click += new System.EventHandler(this.btnGet_Click); 
            this.btnGet2.Click += new System.EventHandler(this.btnGet2_Click); 
            this.Load += new System.EventHandler(this.Page_Load); 
        } 
        #endregion 
        private void btnGet_Click(object sender, System.EventArgs e) 
        { 
            WebRequest wreq=WebRequest.Create("                 
            HttpWebResponse wresp=(HttpWebResponse)wreq.GetResponse(); 
                     
            string HTML =""; 
            Stream s=wresp.GetResponseStream(); 
                 
            StreamReader objReader = new StreamReader(s); 
            string sLine = ""; 
            int i = 0; 
            while (sLine!=null) 
            { 
                i++; 
                sLine = objReader.ReadLine(); 
                if (sLine!=null) 
                    HTML += sLine; 
            } 
                 
            String temp= ""; 
            int start,stop; 
                             
            start = HTML.IndexOf("<!-- CURCON-->",0,HTML.Length); 
stop = HTML.IndexOf("<!-- END CURCON-->",0,HTML.Length);
            temp = HTML.Substring(start, stop - start); 
            start = temp.IndexOf("<b>"); 
            stop = temp.IndexOf("</b>"); 
             
            string degree = temp.Substring(start+3,stop - start -3); 
            start = temp.IndexOf("<img"); 
            stop = temp.IndexOf("</td>",start); 
            string img = temp.Substring(start,stop - start); 
            lblWeather.Text = degree + "<br>" + img; 
                 
        } 
        private void btnGet2_Click(object sender, System.EventArgs e) 
        { 
            WebRequest wreq=WebRequest.Create("                 
            HttpWebResponse wresp=(HttpWebResponse)wreq.GetResponse(); 
                     
            string HTML =""; 
            Stream s=wresp.GetResponseStream(); 
                 
            StreamReader objReader = new StreamReader(s,System.Text.Encoding.GetEncoding("GB2312")); 
     
            string sLine = ""; 
            int i = 0; 
            while (sLine!=null) 
            { 
                i++; 
                sLine = objReader.ReadLine(); 
                if (sLine!=null) 
                    HTML += sLine; 
            } 
                 
            String temp= ""; 
            int start,stop; 
                             
            start = HTML.IndexOf("<table border=0 cellpadding=2 cellspacing=1 bgcolor=9999cc width=/"85%/">",0,HTML.Length); 
            stop = HTML.IndexOf("</table>",start)+8; 
             
            temp = HTML.Substring(start, stop - start); 
            Weather2.Text = temp;         
        } 
    } 
}  
新聞熱點
疑難解答