FtpWebResponse.GetResponseStream Metod

Definition

Hämtar dataströmmen som innehåller svarsdata som skickas från en FTP-server.

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

Returer

En läsbar Stream instans som innehåller data som returneras med svaret, Null annars om inga svarsdata returnerades av servern.

Undantag

Svaret returnerade inte någon dataström.

Exempel

Följande kodexempel visar hur du hämtar svarsströmmen för en ListDirectory begäran.

public static bool ListFilesOnServer(Uri serverUri)
{
    // The serverUri should start with the ftp:// scheme.
    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
        return false;
    }
    // Get the object used to communicate with the server.
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
    request.Method = WebRequestMethods.Ftp.ListDirectory;

    // Get the ServicePoint object used for this request, and limit it to one connection.
    // In a real-world application you might use the default number of connections (2),
    // or select a value that works best for your application.

    ServicePoint sp = request.ServicePoint;
    Console.WriteLine("ServicePoint connections = {0}.", sp.ConnectionLimit);
    sp.ConnectionLimit = 1;

    FtpWebResponse response = (FtpWebResponse) request.GetResponse();

    // The following streams are used to read the data returned from the server.
    Stream responseStream = null;
    StreamReader readStream = null;
    try
    {
        responseStream = response.GetResponseStream();
        readStream = new StreamReader(responseStream, System.Text.Encoding.UTF8);

        if (readStream != null)
        {
            // Display the data received from the server.
            Console.WriteLine(readStream.ReadToEnd());
        }
        Console.WriteLine("List status: {0}",response.StatusDescription);
    }
    finally
    {
        if (readStream != null)
        {
            readStream.Close();
        }
        if (response != null)
        {
            response.Close();
        }
    }

    return true;
}

Kommentarer

När du har läst data måste du stänga strömmen. Strömmen stängs automatiskt när du stänger objektet FtpWebResponse som innehåller den.

Ett undantag utlöses om inte begärandemetoden är DownloadFile eller ListDirectory.

Gäller för

Se även