帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统v4.6
栏 目:
 
您的位置:首页 > 技术文档 > ASP.NET编程 >
ASP.NET的实时天气及24小时天气预报(C#)
作者:vazi 发布时间:2005-03-12 来源:ASPCOOL
     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;
   }
   }
  }
  
  

  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·ASP.NET虚拟主机的重大安全隐患(  (2005-03-12)
 ·带你走进ASP.NET(3)  (2005-03-12)
 ·带你走进ASP.NET(2)  (2005-03-12)

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·帝国网站管理系统采集使用教程
·帝国网站管理系统模板制作教程
·帝国CMS模板下载
·Discuz6.0.1UC版通行证发布
·帝国网站管理系统之网站迁移教程
·帝国网站管理系统实例入门教程下载
·《帝国网站管理系统》实例入门教程
   类别最新
·ASP.NET中为DataGrid添加合计字段
·.text urlRewrite介绍
·利用 ASP.NET 的内置功能抵御 Web
·ASP.NET Cache
·用 WebClient.UploadData 方法 上载
·ASP.NET 程序设计-序
·什么是客户端/伺服端(Client/Serve
·因特网应用程序的开发
·网页的种类
·.NET Framework-Microsoft Visual
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统