Represents file name comparer.

      Syntax

      public class FileNameComparer : FileComparer

      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();

      Inheritance Hierarchy

            ComponentPro.IO.ComponentPro.IO.FileNameComparer

      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)

      Xamarin AndroidXamarin Android

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

      Xamarin iOSXamarin iOS

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

      See Also