org.apache.commons.io.comparator
public class PathFileComparator extends java.lang.Object implements java.util.Comparator, java.io.Serializable
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);
Modifier and Type | Field and Description |
---|---|
private IOCase |
caseSensitivity
Whether the comparison is case sensitive.
|
static java.util.Comparator |
PATH_COMPARATOR
Case-sensitive path comparator instance (see
IOCase.SENSITIVE ) |
static java.util.Comparator |
PATH_INSENSITIVE_COMPARATOR
Case-insensitive path comparator instance (see
IOCase.INSENSITIVE ) |
static java.util.Comparator |
PATH_INSENSITIVE_REVERSE
Reverse case-insensitive path comparator instance (see
IOCase.INSENSITIVE ) |
static java.util.Comparator |
PATH_REVERSE
Reverse case-sensitive path comparator instance (see
IOCase.SENSITIVE ) |
static java.util.Comparator |
PATH_SYSTEM_COMPARATOR
System sensitive path comparator instance (see
IOCase.SYSTEM ) |
static java.util.Comparator |
PATH_SYSTEM_REVERSE
Reverse system sensitive path comparator instance (see
IOCase.SYSTEM ) |
Constructor and Description |
---|
PathFileComparator()
Construct a case sensitive file path comparator instance.
|
PathFileComparator(IOCase caseSensitivity)
Construct a file path comparator instance with the specified case-sensitivity.
|
Modifier and Type | Method and Description |
---|---|
int |
compare(java.lang.Object obj1,
java.lang.Object obj2)
Compare the paths of two files the specified case sensitivity.
|
public static final java.util.Comparator PATH_COMPARATOR
IOCase.SENSITIVE
)public static final java.util.Comparator PATH_REVERSE
IOCase.SENSITIVE
)public static final java.util.Comparator PATH_INSENSITIVE_COMPARATOR
IOCase.INSENSITIVE
)public static final java.util.Comparator PATH_INSENSITIVE_REVERSE
IOCase.INSENSITIVE
)public static final java.util.Comparator PATH_SYSTEM_COMPARATOR
IOCase.SYSTEM
)public static final java.util.Comparator PATH_SYSTEM_REVERSE
IOCase.SYSTEM
)private final IOCase caseSensitivity
public PathFileComparator()
public PathFileComparator(IOCase caseSensitivity)
caseSensitivity
- how to handle case sensitivity, null means case-sensitivepublic int compare(java.lang.Object obj1, java.lang.Object obj2)
compare
in interface java.util.Comparator
obj1
- The first file to compareobj2
- The second file to compareCopyright (c) 2002-2015 Apache Software Foundation