ASP.NET的实时天气及24小时天气预报(C#)_[Asp.Net教程]
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" %>
getweather
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);
}
///
/// required method for designer support - do not modify
/// the contents of this method with the code editor.
///
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("
",0,html.length);
stop = html.indexof("
",0,html.length);
temp = html.substring(start, stop - start);
start = temp.indexof("");
stop = temp.indexof("");
string degree = temp.substring(start+3,stop - start -3);
start = temp.indexof("
stop = temp.indexof("
",start);
string img = temp.substring(start,stop - start);
lblweather.text = degree + "
" + 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("
",0,html.length);
stop = html.indexof("
",start)+8;
temp = html.substring(start, stop - start);
weather2.text = temp;
}
}
}