FtpWebResponse.ContentLength FtpWebResponse.ContentLength FtpWebResponse.ContentLength FtpWebResponse.ContentLength Property

Definition

Ruft die Länge der vom FTP-Server empfangenen Daten ab.Gets the length of the data received from the FTP server.

public:
 virtual property long ContentLength { long get(); };
public override long ContentLength { get; }
member this.ContentLength : int64
Public Overrides ReadOnly Property ContentLength As Long

Eigenschaftswert

Ein Int64-Wert, der die Anzahl von Bytes der vom FTP-Server empfangenen Daten enthält.An Int64 value that contains the number of bytes of data received from the FTP server.

Beispiele

Das folgende Codebeispiel lädt eine Datei aus, auf dem angegebenen FTP-Server herunter.The following code example downloads a file from on the specified FTP server. Diese Eigenschaft enthält die Anzahl der Bytes in der heruntergeladenen Datei.This property contains the number of bytes in the downloaded file.

static bool DownloadFileFromServer( Uri^ serverUri, String^ localFileName )
{
   // The serverUri parameter should start with the ftp:// scheme.
   if ( serverUri->Scheme != Uri::UriSchemeFtp )
   {
      return false;
   }

   // Get the object used to communicate with the server.
   // Note that the cast to FtpWebRequest is done only
   // for the purposes of illustration. If your application
   // does not set any properties other than those defined in the
   // System.Net.WebRequest class, you can use the following line instead:
   // WebRequest request = WebRequest.Create(serverUri);
   //
   FtpWebRequest^ request = dynamic_cast<FtpWebRequest^>(WebRequest::Create( serverUri ));
   request->Method = WebRequestMethods::Ftp::DownloadFile;
   FtpWebResponse^ response = dynamic_cast<FtpWebResponse^>(request->GetResponse());
   Stream^ responseStream = nullptr;
   StreamReader^ readStream = nullptr;
   StreamWriter^ writeStream = nullptr;
   try
   {
      responseStream = response->GetResponseStream();
      readStream = gcnew StreamReader( responseStream,System::Text::Encoding::UTF8 );
      
      // Display information about the data received from the server.
      Console::WriteLine( "Bytes received: {0}", response->ContentLength );
      Console::WriteLine( "Message from server: {0}", response->StatusDescription );
      Console::WriteLine( "Resource: {0}", response->ResponseUri );

      // Write the bytes received from the server to the local file.
      if ( readStream != nullptr )
      {
         writeStream = gcnew StreamWriter( localFileName,false );
         writeStream->Write( readStream->ReadToEnd() );
      }
   }
   finally
   {
      if ( readStream != nullptr )
      {
         readStream->Close();
      }

      if ( response != nullptr )
      {
         response->Close();
      }

      if ( writeStream != nullptr )
      {
         writeStream->Close();
      }
   }

   return true;
}
public static bool DownloadFileFromServer(Uri serverUri, string localFileName)
{
    // The serverUri parameter should start with the ftp:// scheme.
    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
        return false;
    }
    // Get the object used to communicate with the server.
    // Note that the cast to FtpWebRequest is done only
    // for the purposes of illustration. If your application
    // does not set any properties other than those defined in the
    // System.Net.WebRequest class, you can use the following line instead:
    // WebRequest request = WebRequest.Create(serverUri);
    //
    FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
    request.Method = WebRequestMethods.Ftp.DownloadFile;
    
    FtpWebResponse response = (FtpWebResponse) request.GetResponse();
    
    Stream responseStream = null;
    StreamReader readStream = null;
    StreamWriter writeStream = null;
    try
    {
        responseStream = response.GetResponseStream(); 
        readStream = new StreamReader(responseStream, System.Text.Encoding.UTF8);
        // Display information about the data received from the server.
        Console.WriteLine("Bytes received: {0}",response.ContentLength);   
         
        Console.WriteLine("Message from server: {0}", response.StatusDescription);
        Console.WriteLine("Resource: {0}", response.ResponseUri);
       
        // Write the bytes received from the server to the local file.
        if (readStream != null)
        {
            writeStream = new StreamWriter(localFileName, false);
            writeStream.Write(readStream.ReadToEnd());
        }
    }
    finally
    {
        if (readStream != null)
        {
            readStream.Close();
        }
        if (response != null)
        {
            response.Close();
        }
        if (writeStream != null)
        {
            writeStream.Close();
        }
    }
    return true;
}

Hinweise

Wenn Sie ein Antwortdatenstrom von den FTP-Server zurückgegeben wird das ContentLength Eigenschaft enthält die Anzahl der Bytes im Stream.When a response stream is returned by the FTP server, the ContentLength property contains the number of bytes in the stream. ContentLength Gibt −1 zurück, wenn keine Daten in der Antwort zurückgegeben wurde, oder wenn der Server keine Inhaltslänge Informationen gesendet hat.ContentLength returns −1 if no data was returned in the response or if the server did not send content length information. Der zurückgegebene Wert ist größer als oder gleich 0 (null), wenn Daten oder zurückgegeben wurden sollte.The return value is greater than or equal to zero if data was or should have been returned. Beispielsweise für Anforderungen, verwenden die ListDirectory Feld der ContentLength Eigenschaft gibt immer −1 zurück.For example, for requests that use the ListDirectory field, the ContentLength property always returns −1. Für Anforderungen, verwenden die UploadFile -Methode, die ContentLength Eigenschaft ist immer 0 (null).For requests that use the UploadFile method, the ContentLength property is always zero. Für Anforderungen, verwenden die DownloadFile -Methode, die Eigenschaft ist größer als 0 (null), wenn Sie die heruntergeladene Datei enthält Daten, und 0 (null) ist, wenn es leer war.For requests that use the DownloadFile method, the property is greater than zero if the downloaded file contained data and is zero if it was empty.

Für Anforderungen, verwenden die GetFileSize Methode ContentLength gibt die Größe der angegebenen Datei auf dem Server zurück.For requests that use the GetFileSize method, ContentLength returns the size of the specified file on the server.

Gilt für:

Siehe auch