WebResponse::GetResponseStream Method
When overridden in a descendant class, returns the data stream from the Internet resource.
Assembly: System (in System.dll)
| Exception | Condition |
|---|---|
| NotSupportedException | Any attempt is made to access the method, when the method is not overridden in a descendant class. |
The GetResponseStream method returns the data stream from the Internet resource.
Note: |
|---|
The response stream must be closed to avoid running out of system resources. The response stream can be closed by calling Stream::Close or Close |
The following example uses GetResponseStream to return a StreamReader instance. A small local buffer is used to read data from the StreamReader and output it to the console.
// Create a 'WebRequest' object with the specified url. WebRequest^ myWebRequest = WebRequest::Create( "http://www.contoso.com" ); // Send the 'WebRequest' and wait for response. WebResponse^ myWebResponse = myWebRequest->GetResponse(); // Obtain a 'Stream' object associated with the response object. Stream^ ReceiveStream = myWebResponse->GetResponseStream(); Encoding^ encode = System::Text::Encoding::GetEncoding( "utf-8" ); // Pipe the stream to a higher level stream reader with the required encoding format. StreamReader^ readStream = gcnew StreamReader( ReceiveStream,encode ); Console::WriteLine( "\nResponse stream received" ); array<Char>^ read = gcnew array<Char>(256); // Read 256 charcters at a time. int count = readStream->Read( read, 0, 256 ); Console::WriteLine( "HTML...\r\n" ); while ( count > 0 ) { // Dump the 256 characters on a string and display the string onto the console. String^ str = gcnew String( read,0,count ); Console::Write( str ); count = readStream->Read( read, 0, 256 ); } Console::WriteLine( "" ); // Release the resources of stream object. readStream->Close(); // Release the resources of response object. myWebResponse->Close();
// Create a 'WebRequest' object with the specified url.
WebRequest* myWebRequest = WebRequest::Create(S"http://www.contoso.com");
// Send the 'WebRequest' and wait for response.
WebResponse* myWebResponse = myWebRequest->GetResponse();
// Obtain a 'Stream' object associated with the response object.
Stream* ReceiveStream = myWebResponse->GetResponseStream();
Encoding* encode = System::Text::Encoding::GetEncoding(S"utf-8");
// Pipe the stream to a higher level stream reader with the required encoding format.
StreamReader* readStream = new StreamReader(ReceiveStream, encode);
Console::WriteLine(S"\nResponse stream received");
Char read[] = new Char[256];
// Read 256 charcters at a time.
int count = readStream->Read(read, 0, 256);
Console::WriteLine(S"HTML...\r\n");
while (count > 0) {
// Dump the 256 characters on a string and display the string onto the console.
String* str = new String(read, 0, count);
Console::Write(str);
count = readStream->Read(read, 0, 256);
}
Console::WriteLine(S"");
// Release the resources of stream object.
readStream->Close();
// Release the resources of response object.
myWebResponse->Close();
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note: