Xceed .NET Libraries Documentation
Xceed.Ftp Assembly / Xceed.Ftp Namespace / AsyncFtpClient Class / BeginGetDownloadStream Method
Example


In This Topic
    BeginGetDownloadStream Method
    In This Topic
    Begins the process of retrieving a direct access to the readonly data stream being received. Don't forget to call EndGetDownloadStream!
    Begins the process of retrieving a direct access to the readonly data stream being received. Don't forget to call EndGetDownloadStream!
    Overload List
    OverloadDescription
    Begins the process of retrieving a direct access to the readonly data stream being received. Don't forget to call EndGetDownloadStream!  
    Begins the process of retrieving a direct access to the readonly data stream being received, beginning at the specified offset. Don't forget to call EndGetDownloadStream!  
    Example
    AsyncFtpClient ftp = new AsyncFtpClient();
    IAsyncResult result = ftp.BeginConnect( "ftp.server.com", null, null );
    
    while( !result.IsCompleted )
      Application.DoEvents();
    
    ftp.EndConnect( result );
    
    result = ftp.BeginLogin( null, null );
    
    while( !result.IsCompleted )
      Application.DoEvents();
    
    ftp.EndLogin( result );
    
    result = ftp.BeginGetDownloadStream( "test.txt", 0, null, null );
    
    while( !result.IsCompleted )
      Application.DoEvents();
    
    using( System.IO.Stream stream = ftp.EndGetDownloadStream( result ) )
    {
      byte[] buffer = new byte[ 32768 ];
      int bytesRead = 0;
    
      // Loop until we have nothing more to read from the source stream.
      // We are assuming that the data contained in the file is text
      string data = string.Empty;
      while( ( bytesRead = stream.Read( buffer, 0, buffer.Length ) ) > 0 )
      {
        data += System.Text.Encoding.ASCII.GetString( buffer );
      }
    
      System.Diagnostics.Debug.WriteLine( data );
    }
    Supported Frameworks

    .NET: net5.0, net5.0-windows, net6.0, net6.0-macos, net6.0-windows, net7.0, net7.0-macos, net7.0-windows, net8.0, net8.0-browser, net8.0-macos, net8.0-windows, net9.0, net9.0-browser, net9.0-macos, net9.0-windows, net10.0, net10.0-browser, net10.0-macos, net10.0-windows.

    .NET Standard: netstandard2.0, netstandard2.1

    .NET Framework: net20, net35, net40, net403, net45, net451, net452, net46, net461, net462, net463, net47, net471, net472, net48, net481.

    See Also