FileWebResponse.GetResponseStream 方法

定义

返回来自文件系统资源的数据流。Returns the data stream from the file system resource.

public:
 override System::IO::Stream ^ GetResponseStream();
public override System.IO.Stream GetResponseStream ();
override this.GetResponseStream : unit -> System.IO.Stream
Public Overrides Function GetResponseStream () As Stream

返回

Stream

用于从文件系统资源中读取数据的 StreamA Stream for reading data from the file system resource.

示例

下面的示例使用 GetResponseStream 方法从文件系统资源返回数据流。The following example uses the GetResponseStream method to return the data stream from the file system resource.

Uri^ fileUrl = gcnew Uri( String::Concat( "file://", url ) );
// Create a 'FileWebrequest' Object* with the specified Uri.
FileWebRequest^ myFileWebRequest = (FileWebRequest^)( WebRequest::Create( fileUrl ) );
// Send the 'FileWebRequest' Object* and wait for response.
FileWebResponse^ myFileWebResponse = (FileWebResponse^)( myFileWebRequest->GetResponse() );

// Get the stream Object* associated with the response Object*.
Stream^ receiveStream = myFileWebResponse->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( "\r\nResponse stream received" );

array<Char>^ read = gcnew array<Char>(256);
// Read 256 characters at a time.
int count = readStream->Read( read, 0, 256 );
Console::WriteLine( "File Data...\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 resources of stream Object*.
readStream->Close();
// Release resources of response Object*.
myFileWebResponse->Close();
Uri fileUrl = new Uri("file://"+url);
// Create a 'FileWebrequest' object with the specified Uri.
FileWebRequest myFileWebRequest = (FileWebRequest)WebRequest.Create(fileUrl);
// Send the 'FileWebRequest' object and wait for response.
FileWebResponse myFileWebResponse = (FileWebResponse)myFileWebRequest.GetResponse();

// Get the stream object associated with the response object.
Stream receiveStream = myFileWebResponse.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 = new StreamReader( receiveStream, encode );
Console.WriteLine("\r\nResponse stream received");

Char[] read = new Char[256];
// Read 256 characters at a time.
int count = readStream.Read( read, 0, 256 );
Console.WriteLine("File Data...\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("");
// Release resources of stream object.
readStream.Close();
// Release resources of response object.
myFileWebResponse.Close();
Dim fileUrl As New Uri("file://" + url)
' Create a 'FileWebrequest' object with the specified Uri .
Dim myFileWebRequest As FileWebRequest = CType(WebRequest.Create(fileUrl), FileWebRequest)
' Send the 'fileWebRequest' and wait for response. 
Dim myFileWebResponse As FileWebResponse = CType(myFileWebRequest.GetResponse(), FileWebResponse)


' CALLING METHOD GetResponseStream will return the stream associated with the response object.
Dim ReceiveStream As Stream = myFileWebResponse.GetResponseStream()

Dim encode As Encoding = System.Text.Encoding.GetEncoding("utf-8")
' Pipe the stream to a higher level stream reader with the required encoding format .
Dim readStream As New StreamReader(ReceiveStream, encode)
Console.WriteLine(ControlChars.Lf + ControlChars.Cr + "Response stream received")

Dim read(256) As [Char]
' Reading 256 characters at a time.    
Dim count As Integer = readStream.Read(read, 0, 256)
Console.WriteLine("File Data..." + ControlChars.Lf + ControlChars.Cr)
While count > 0
    ' Dump the 256 characters on a string and display the string onto the console.
    Dim str As New [String](read, 0, count)
    Console.Write(str)
    count = readStream.Read(read, 0, 256)
End While
Console.WriteLine("")
' Release the resources of stream object.
readStream.Close()
' Release the resources of response object.
myFileWebResponse.Close()

注解

GetResponseStream方法从文件系统资源返回数据流。The GetResponseStream method returns the data stream from the file system resource.

备注

必须关闭响应流以避免系统资源不足。The response stream must be closed to avoid running out of system resources. 可以通过调用或关闭响应流 Stream.CloseCloseThe response stream can be closed by calling Stream.Close or Close

适用于