public class FtpFileInfoCollection : FileInfoCollection<TFileInfo>
Shows how to use ListDirectory methods to retrieve list of files and directories in a directory.
using System; using ComponentPro.IO; using ComponentPro.Net; ... // Create a new class instance. Ftp client = new Ftp(); // Connect to the FTP server. client.Connect("myserver"); // Authenticate. client.Authenticate("test", "test"); // ... // Get information of all files and directories in '/' remote dir. foreach (FtpFileInfo info in client.ListDirectory("/")) { Console.WriteLine("Name: {0}, Permissions: {1}", info.Name, info.Permissions); } // Many FTP servers do not support ListDirectory with parameter method, Hence, we have to // change the current directory before calling ListDirectory. // Get names of all files and directories in '/my folder' remote dir. client.SetCurrentDirectory("/my folder"); foreach (FtpFileInfo info in client.ListDirectory()) { Console.WriteLine("Name: {0}, Permissions: {1}", info.Name, info.Permissions); } // List files with search condition. // List all files that have .exe extension in "/" folder. foreach (FtpFileInfo info in client.ListDirectory("/", new NameSearchCondition("*.exe"))) { Console.WriteLine("Name: {0}, Permissions: {1}", info.Name, info.Permissions); } // Change the current directory before calling ListDirectory. // Get names of files with .cs or .vb extensions and directories in '/my folder2' remote dir. client.SetCurrentDirectory("/my folder2"); foreach (FtpFileInfo info in client.ListDirectory(new NameSearchCondition("*.cs;*.vb"))) { Console.WriteLine("Name: {0}, Permissions: {1}", info.Name, info.Permissions); } // ... // Disconnect. client.Disconnect();