Represents file size comparer.

      Syntax

      public class FileSizeComparer : FileComparer

      Examples

      FTP Examples

      Shows how to use FileComparers.FileSizeComparer in a Mirror operation.

      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 Mirror settings 
      // Synchronize files with different file size. 
      // Files with the same size will not be synchronized.
      opt.Comparer = FileComparers.FileSizeComparer;
      opt.Recursive = true;
      
      // Mirror folders.
      client.QuickSynchronize(
          "", // Source directory path. "" indicates the current directory within the archive. 
          "c:\\test", // Destination directory path.                 
          true, // Source directory is master. It means contents of "c:\test" will be identical to the current remote directory's. 
          opt
          );
      
      // That comparer can also be used in Upload and Download operations.
      TransferOptions transferOptions = new TransferOptions();
      // Files with the same length will not be downloaded.
      transferOptions.Comparer = new ComponentPro.IO.FileLastWriteTimeComparer(TimeResolution.Seconds);
      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.FileSizeComparer in a Mirror operation.

      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 Mirror settings 
      // Synchronize files with different file size. 
      // Files with the same size will not be synchronized.
      opt.Comparer = FileComparers.FileSizeComparer;
      opt.Recursive = true;
      
      // Mirror folders.
      client.QuickSynchronize(
          "", // Source directory path. "" indicates the current directory within the archive. 
          "c:\\test", // Destination directory path.                 
          true, // Source directory is master. It means contents of "c:\test" will be identical to the current remote directory's. 
          opt
          );
      
      // That comparer can also be used in Upload and Download operations.
      TransferOptions transferOptions = new TransferOptions();
      // Files with the same length will not be downloaded.
      transferOptions.Comparer = new ComponentPro.IO.FileLastWriteTimeComparer(TimeResolution.Seconds);
      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.FileSizeComparer 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 file size. 
      // Files with the same size will not be synchronized.
      opt.Comparer = FileComparers.FileSizeComparer;
      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.FileSizeComparer

      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