Click here to Skip to main content
13,097,661 members (56,177 online)
Click here to Skip to main content
Add your own
alternative version


32 bookmarked
Posted 26 Apr 2003

Weather Update application

, 26 Apr 2003
Rate this:
Please Sign up or sign in to vote.
This article is intended to show you how you can use the Internet to gather and display dynamic content.

Sample Image - WeatherUpdate.gif


This article is intended to show you how you can use the Internet to gather and display dynamic content.


While teaching myself C#, I wanted to figure out how to use the HttpWebRequest and HttpWebResponse objects to gather information from the Internet. Being new to C#, I decided to rewrite one of my previous C++ applications in C#. What better way to learn the caveats of a new language than to rebuild an existing application in a newer language?

I’d like to thank Mike Gold from C# corner for his articles, Carlos Perez for his progress bar demo, Dion Heskett for his gradient label and Nishant S for his notify icon example. I’m an avid Code Project reader and appreciate all the hard work others have done.

The Code

string sfullpath = 
   @"" + 
HttpWebRequest MyWebReq;
HttpWebResponse MyWebRes;
StreamReader MySReader;

sForecast = "";
sTemp = "";
string sTempPrompt = @"font-size:20px"; 

// Get request & response from the internet.
MyWebReq = (HttpWebRequest) WebRequest.Create(sfullpath);
MyWebRes = (HttpWebResponse) MyWebReq.GetResponse();     
MySReader = new 
  StreamReader(MyWebRes.GetResponseStream(), Encoding.ASCII);

// Get the line of code the prompt is on.

while( sTemp.IndexOf( sTempPrompt ) == -1 )
    sTemp = MySReader.ReadLine();

MySReader .Close();
sTemp = sTemp.ToLower();
sTemp = sTemp.Trim();

sForecastOriginal = sTemp;

// Locate the index of the prompt.

int iTempIndex = sTemp.IndexOf( sTempPrompt );
iTempIndex = iTempIndex + 16;

sForecastOriginal = sForecastOriginal.Substring( iTempIndex, 600 );
sForecast = sForecastOriginal;

sTemp = sTemp.Substring( iTempIndex, 5 );
sTemp = sTemp.Substring( 0, sTemp.IndexOf( "<" ) );

// Trim string for displaying.
sTemp = sTemp.Trim();


Using the code

The one main point I’d like to make is that since I’m parsing HTML, I’m at the mercy of the website where I’m getting the HTML from. If they decide to dramatically change the setup of their page, then this application might not get the correct data. If a message box pops up, shut the program down and then open it back up again. When the message box shows up, that means the HTML I'm trying to parse is being written.


Initial release 1.0.1


This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


About the Author

Web Developer
United States United States
Doug graduated college in 2000 with a degree in
Computer Information Systems. Since then Doug
has been working on software engineering projects
mostly for government consulting companies.
The majority of Doug's programming experience is in
windows development using C# and visual C++ with MFC.
Since October 2002, Doug has been using C# and has
been creating C# windows applications and ASP.NET web applications.

You may also be interested in...


Comments and Discussions

GeneralInteresting Pin
dog_spawn27-Apr-03 12:26
memberdog_spawn27-Apr-03 12:26 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.170813.1 | Last Updated 27 Apr 2003
Article Copyright 2003 by Manster
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid