FileWebResponse.GetResponseStream 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回来自文件系统资源的数据流。
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。
示例
以下示例使用 GetResponseStream 方法从文件系统资源返回数据流。
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 从文件系统资源返回数据流。
注意
必须关闭响应流,以避免系统资源耗尽。 可以通过调用 Stream.Close 或 关闭响应流 Close