org.apache.commons.io.comparator
Class PathFileComparator
java.lang.Object
org.apache.commons.io.comparator.PathFileComparator
- Comparator, Serializable
public class PathFileComparator
extends java.lang.Object
implements Comparator, Serializable
Compare the
path of two files for order (see
File.getPath()
).
This comparator can be used to sort lists or arrays of files
by their path either in a case-sensitive, case-insensitive or
system dependant case sensitive way. A number of singleton instances
are provided for the various case sensitivity options (using
IOCase
)
and the reverse of those options.
Example of a
case-sensitive file path sort using the
PATH_COMPARATOR
singleton instance:
List<File> list = ...
Collections.sort(list, PathFileComparator.PATH_COMPARATOR);
Example of a
reverse case-insensitive file path sort using the
PATH_INSENSITIVE_REVERSE
singleton instance:
File[] array = ...
Arrays.sort(array, PathFileComparator.PATH_INSENSITIVE_REVERSE);
$Revision: 609243 $ $Date: 2008-01-06 00:30:42 +0000 (Sun, 06 Jan 2008) $
int | compare(Object obj1, Object obj2) - Compare the paths of two files the specified case sensitivity.
|
PATH_COMPARATOR
public static final Comparator PATH_COMPARATOR
PATH_INSENSITIVE_COMPARATOR
public static final Comparator PATH_INSENSITIVE_COMPARATOR
PATH_INSENSITIVE_REVERSE
public static final Comparator PATH_INSENSITIVE_REVERSE
PATH_REVERSE
public static final Comparator PATH_REVERSE
PATH_SYSTEM_COMPARATOR
public static final Comparator PATH_SYSTEM_COMPARATOR
PATH_SYSTEM_REVERSE
public static final Comparator PATH_SYSTEM_REVERSE
Reverse system sensitive path comparator instance (see
IOCase.SYSTEM
)
caseSensitivity
private final IOCase caseSensitivity
Whether the comparison is case sensitive.
PathFileComparator
public PathFileComparator()
Construct a case sensitive file path comparator instance.
PathFileComparator
public PathFileComparator(IOCase caseSensitivity)
Construct a file path comparator instance with the specified case-sensitivity.
caseSensitivity
- how to handle case sensitivity, null means case-sensitive
compare
public int compare(Object obj1,
Object obj2)
Compare the paths of two files the specified case sensitivity.
obj1
- The first file to compareobj2
- The second file to compare
- a negative value if the first file's path
is less than the second, zero if the paths are the
same and a positive value if the first files path
is greater than the second file.
Copyright (c) 2002-2008 Apache Software Foundation