WEB开发网
开发学院WEB开发ASP.NET ASP.NET的实时天气及24小时天气预报(C#) 阅读

ASP.NET的实时天气及24小时天气预报(C#)

 2003-12-29 17:46:11 来源:WEB开发网   
核心提示: asp.net的实时天气及24小时天气预报(C#) 修改其中的url获得其他城市的天气情况 如广州为: http://weather.yahoo.com/forecast/CHXX0037_c.html 注意仅适用于获得yahoo上的天气预报 GetWeather.aspx --- <%@ Page langu

 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_defaultClientScript" content="javaScript">
     <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
   </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("http://weather.yahoo.com/forecast/CHXX0037_c.html");
        
       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("http://cn.weather.yahoo.com/CHXX/CHXX0037/index_c.html");
        
       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;    
     }
   }

Tags:ASP NET 实时

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接