Package org.apache.commons.io.comparator
Class SizeFileComparator
java.lang.Object
org.apache.commons.io.comparator.SizeFileComparator
- All Implemented Interfaces:
- Serializable,- Comparator<File>
Compare the length/size of two files for order (see
 
File.length() and FileUtils.sizeOfDirectory(File)).
 This comparator can be used to sort lists or arrays of files by their length/size.
 Example of sorting a list of files using the
 SIZE_COMPARATOR singleton instance:
 
       List<File> list = ...
       ((AbstractFileComparator) SizeFileComparator.SIZE_COMPARATOR).sort(list);
 
 
 Example of doing a reverse sort of an array of files using the
 SIZE_REVERSE singleton instance:
 
       File[] array = ...
       ((AbstractFileComparator) SizeFileComparator.SIZE_REVERSE).sort(array);
 
 
 N.B. Directories are treated as zero size unless
 sumDirectoryContents is true.
 
Deprecating Serialization
Serialization is deprecated and will be removed in 3.0.
- Since:
- 1.4
- See Also:
- 
Field SummaryFieldsModifier and TypeFieldDescriptionstatic final Comparator<File> Size comparator instance - directories are treated as zero sizestatic final Comparator<File> Reverse size comparator instance - directories are treated as zero sizestatic final Comparator<File> Size comparator instance which sums the size of a directory's contents usingFileUtils.sizeOfDirectory(File)static final Comparator<File> Reverse size comparator instance which sums the size of a directory's contents usingFileUtils.sizeOfDirectory(File)
- 
Constructor SummaryConstructorsConstructorDescriptionConstructs a file size comparator instance (directories treated as zero size).SizeFileComparator(boolean sumDirectoryContents) Constructs a file size comparator instance specifying whether the size of the directory contents should be aggregated.
- 
Method SummaryMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Comparatorequals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
- 
Field Details- 
SIZE_COMPARATORSize comparator instance - directories are treated as zero size
- 
SIZE_REVERSEReverse size comparator instance - directories are treated as zero size
- 
SIZE_SUMDIR_COMPARATORSize comparator instance which sums the size of a directory's contents usingFileUtils.sizeOfDirectory(File)
- 
SIZE_SUMDIR_REVERSEReverse size comparator instance which sums the size of a directory's contents usingFileUtils.sizeOfDirectory(File)
 
- 
- 
Constructor Details- 
SizeFileComparatorpublic SizeFileComparator()Constructs a file size comparator instance (directories treated as zero size).
- 
SizeFileComparatorConstructs a file size comparator instance specifying whether the size of the directory contents should be aggregated.If the sumDirectoryContentsistrueThe size of directories is calculated usingFileUtils.sizeOfDirectory(File).- Parameters:
- sumDirectoryContents-- trueif the sum of the directories' contents should be calculated, otherwise- falseif directories should be treated as size zero (see- FileUtils.sizeOfDirectory(File)).
 
 
- 
- 
Method Details- 
compareCompares the length of two files.- Specified by:
- comparein interface- Comparator<File>
- Parameters:
- file1- The first file to compare
- file2- The second file to compare
- Returns:
- a negative value if the first file's length is less than the second, zero if the lengths are the same and a positive value if the first files length is greater than the second file.
 
- 
toStringString representation of this file comparator.- Returns:
- String representation of this file comparator
 
- 
sortSorts an array of files.This method uses Arrays.sort(Object[], Comparator)and returns the original array.- Parameters:
- files- The files to sort, may be null.
- Returns:
- The sorted array.
- Since:
- 2.0
 
- 
sortSorts a List of files.This method uses List.sort(Comparator)and returns the original list.- Parameters:
- files- The files to sort, may be null.
- Returns:
- The sorted list.
- Since:
- 2.0
 
 
-