ComponentPro UltimateFtp

      FileNameComparer Property

      See AlsoMembers Options: Show AllLanguage Filter: AllSend comments on this topic to ComponentPro
      Compare two files by file names. Case-insensitive comparison.

      Syntax

      public static FileComparer FileNameComparer { get; }

      Examples

      FTP Examples

      Shows how to use FileComparers.FileNameComparer for mirroring a remote folder to a local folder.

      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("userName", "password");
      
      // Create a new instance of the MirrorOptions class.
      QuickSyncOptions opt = new QuickSyncOptions();
      
      // Set synchronization's settings 
      // Synchronize files with different names. 
      // Files with the same name will not be synchronized.
      opt.Comparer = FileComparers.FileNameComparer;
      // If you would like to compare names with case-sensitive option, use the following code 
      // opt.Comparer = FileComparers.FileContentComparerWithResumabilityCheck;
      opt.Recursive = true;
      
      // Synchronize folders.
      client.QuickSynchronize(
          "", // Source directory path within the archive. "" indicates the current directory within the archive. 
          "c:\\test", // Destination directory path.                 
          true, // Source directory is master. It means "c:\test" will be identical to the directory within the archive. 
          opt
          );
      
      // That comparer can also be used in Upload and Download operations.
      TransferOptions transferOptions = new TransferOptions();
      // Files with the same name will not be downloaded.
      transferOptions.Comparer = FileComparers.FileNameComparer;
      transferOptions.FileOverwriteMode = FileOverwriteMode.CustomCompare;
      // Download .txt files from the current remote directory.
      client.Download("*.txt", "C:\\temp", transferOptions);
      
      // Close the connection.
      client.Disconnect();

      SFTP Examples

      Shows how to use FileComparers.FileNameComparer for mirroring a remote folder to a local folder.

      using ComponentPro.IO;
      using ComponentPro.Net;
      
      ...
      
      // Create a new class instance.
      Sftp client = new Sftp();
      
      // Connect to the SFTP server.
      client.Connect("myserver");
      
      // Authenticate.
      client.Authenticate("userName", "password");
      
      // Create a new instance of the MirrorOptions class.
      QuickSyncOptions opt = new QuickSyncOptions();
      
      // Set synchronization's settings 
      // Synchronize files with different names. 
      // Files with the same name will not be synchronized.
      opt.Comparer = FileComparers.FileNameComparer;
      // If you would like to compare names with case-sensitive option, use the following code 
      // opt.Comparer = FileComparers.FileContentComparerWithResumabilityCheck;
      opt.Recursive = true;
      
      // Synchronize folders.
      client.QuickSynchronize(
          "", // Source directory path within the archive. "" indicates the current directory within the archive. 
          "c:\\test", // Destination directory path.                 
          true, // Source directory is master. It means "c:\test" will be identical to the directory within the archive. 
          opt
          );
      
      // That comparer can also be used in Upload and Download operations.
      TransferOptions transferOptions = new TransferOptions();
      // Files with the same name will not be downloaded.
      transferOptions.Comparer = FileComparers.FileNameComparer;
      transferOptions.FileOverwriteMode = FileOverwriteMode.CustomCompare;
      // Download .txt files from the current remote directory.
      client.Download("*.txt", "C:\\temp", transferOptions);
      
      // Close the connection.
      client.Disconnect();

      ZIP Examples

      Shows how to use FileSystem.FileNameComparer for synchronizing a local folder with a folder in an archive.

      using ComponentPro.Compression;
      using ComponentPro.IO;
      
      ...
      
      // Create a new instance.
      Zip zip = new Zip();
      // Open an existing archive.
      zip.Open("test.zip");
      
      // Create a new instance of the QuickSyncOptions class.
      QuickSyncOptions opt = new QuickSyncOptions();
      
      // Set synchronization's settings 
      // Synchronize files with different names. 
      // Files with the same name will not be synchronized.
      opt.Comparer = FileComparers.FileNameComparer;
      // If you would like to compare names with case-sensitive option, use the following code 
      // opt.Comparer = FileSystem.FileContentComparerWithResumabilityCheck;
      opt.Recursive = true;
      
      // Synchronize folders.
      zip.QuickSynchronize(
          "", // Source directory path within the archive. "" indicates the current directory within the archive. 
          "c:\\test", // Destination directory path.                 
          true, // Source directory is master. It means "c:\test" will be identical to the directory within the archive. 
          opt
          );
      
      // Close the zip file.
      zip.Close();

      Framework

      .NET Compact Framework.NET Compact Framework

      Supported version: 2.0, 3.5, and 3.9
      Assembly: ComponentPro.FileSystem.CF (in ComponentPro.FileSystem.CF.dll)

      .NET Framework.NET Framework

      Supported version: 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6.x and later
      Assembly: ComponentPro.FileSystem (in ComponentPro.FileSystem.dll)

      Portable Class Library for Windows Phone 8.1 and Windows 8.1 Store AppsPortable Class Library for Windows Phone 8.1 and Windows 8.1 Store Apps

      Supported version: 4.6.x and later
      Assembly: ComponentPro.FileSystem.WinPcl (in ComponentPro.FileSystem.WinPcl.dll)

      Universal Windows Platform (includes Windows 10 Mobile, Windows 10 Store Apps and Windows 10 IoT)Universal Windows Platform (includes Windows 10 Mobile, Windows 10 Store Apps and Windows 10 IoT)

      Supported version: 4.6.x and later
      Assembly: ComponentPro.FileSystem.Uwp (in ComponentPro.FileSystem.Uwp.dll)

      Xamarin AndroidXamarin Android

      Supported version: 2.3 and later
      Assembly: ComponentPro.FileSystem.Android (in ComponentPro.FileSystem.Android.dll)

      Xamarin MacXamarin Mac

      Supported version: 2.0.x and later
      Assembly: ComponentPro.FileSystem.Mac (in ComponentPro.FileSystem.Mac.dll)

      Xamarin iOSXamarin iOS

      Supported version: 5.1.x and later
      Assembly: ComponentPro.FileSystem.iOS (in ComponentPro.FileSystem.iOS.dll)

      See Also