NET FTP Library
DownloadDirectoryAsync(String,String,Boolean,Regex,Object) Method
Example 






KellermanSoftware.NetFtpLibrary Namespace > FTP Class > DownloadDirectoryAsync Method : DownloadDirectoryAsync(String,String,Boolean,Regex,Object) Method
The local path to put the directory
The FTP directory to download
Download files in sub directories
Regular Expression
Your custom object to be returned with Started, Progress, and Completed Events
Download files matching the regular expression.
Syntax
'Declaration
 
Public Overloads Sub DownloadDirectoryAsync( _
   ByVal localDirectory As System.String, _
   ByVal ftpDirectory As System.String, _
   ByVal subDirectories As System.Boolean, _
   ByVal regularExpression As System.Text.RegularExpressions.Regex, _
   ByVal customObject As System.Object _
) 
'Usage
 
Dim instance As FTP
Dim localDirectory As System.String
Dim ftpDirectory As System.String
Dim subDirectories As System.Boolean
Dim regularExpression As System.Text.RegularExpressions.Regex
Dim customObject As System.Object
 
instance.DownloadDirectoryAsync(localDirectory, ftpDirectory, subDirectories, regularExpression, customObject)
public void DownloadDirectoryAsync( 
   System.string localDirectory,
   System.string ftpDirectory,
   System.bool subDirectories,
   System.Text.RegularExpressions.Regex regularExpression,
   System.object customObject
)
public procedure DownloadDirectoryAsync( 
    localDirectory: System.String;
    ftpDirectory: System.String;
    subDirectories: System.Boolean;
    regularExpression: System.Text.RegularExpressions.Regex;
    customObject: System.TObject
); 
public function DownloadDirectoryAsync( 
   localDirectory : System.String,
   ftpDirectory : System.String,
   subDirectories : System.boolean,
   regularExpression : System.Text.RegularExpressions.Regex,
   customObject : System.Object
);
public: void DownloadDirectoryAsync( 
   System.string* localDirectory,
   System.string* ftpDirectory,
   System.bool subDirectories,
   System.Text.RegularExpressions.Regex* regularExpression,
   System.Object* customObject
) 
public:
void DownloadDirectoryAsync( 
   System.String^ localDirectory,
   System.String^ ftpDirectory,
   System.bool subDirectories,
   System.Text.RegularExpressions.Regex^ regularExpression,
   System.Object^ customObject
) 

Parameters

localDirectory
The local path to put the directory
ftpDirectory
The FTP directory to download
subDirectories
Download files in sub directories
regularExpression
Regular Expression
customObject
Your custom object to be returned with Started, Progress, and Completed Events
Example
FTP ftp = new FTP(); //Trial Mode            
//FTP ftp = new FTP("place user name here", "place license key here");
 
// set the name of the FTP server( its URL )
ftp.HostAddress = "ftp.fsz.bme.hu"; // a hungarian university. change this to your ftp server
ftp.UserName = "anonymous"; // replace with your user name
ftp.Password = "user@mail.com"; // replace with your password
 
//Downloads all directories, subdirectories and files in the selected Directory asynchronously from FTP 
System.Console.WriteLine("We are downloading the TestDir folder.This is a non-blocking call");
 
// All these calls do the same thing
ftp.DownloadDirectory("C:\\Download", "TestDir");
/* ftp.DownloadDirectory("C:\\Download", "TestDir", true, "*.*");
 ftp.DownloadDirectory("C:\\Download", "TestDir", true, new Regex(".+"));
 ftp.DownloadDirectory("C:\\Download", "TestDir", true, DateTime.MinValue, DateTime.MaxValue);
 ftp.DownloadDirectory("C:\\Download", "TestDir", true, 0, Int64.MaxValue);
  */
 
while (ftp.IsBusy == true)
{
    System.Threading.Thread.Sleep(100);
}
 
System.Console.WriteLine("{0} files have been Transferred", ftp.FileCount);
Dim ftp As FTP = New FTP() 'Trial Mode
'FTP ftp = new FTP("place user name here", "place license key here");
 
' set the name of the FTP server( its URL )
ftp.HostAddress = "ftp.fsz.bme.hu" ' a hungarian university. change this to your ftp server
ftp.UserName = "anonymous" ' replace with your user name
ftp.Password = "user@mail.com" ' replace with your password
 
'Downloads all directories, subdirectories and files in the selected Directory asynchronously from FTP 
System.Console.WriteLine("We are downloading the TestDir folder.This is a non-blocking call")
 
' All these calls do the same thing
ftp.DownloadDirectory("C:\\Download", "TestDir")
' ftp.DownloadDirectory("C:\\Download", "TestDir", true, "*.*")
'ftp.DownloadDirectory("C:\\Download", "TestDir", true, new Regex(".+"))
'ftp.DownloadDirectory("C:\\Download", "TestDir", true, DateTime.MinValue, DateTime.MaxValue)
'ftp.DownloadDirectory("C:\\Download", "TestDir", true, 0, Int64.MaxValue)
'
 
Do While ftp.IsBusy = True
    System.Threading.Thread.Sleep(100)
Loop
 
System.Console.WriteLine("{0} files have been Transferred", ftp.FileCount)
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

FTP Class
FTP Members
Overload List