Java Example of org.apache.commons.io.comparator

Q

Where can I find an example Java code that uses the org.apache.commons.io.comparator package?

✍: FYIcenter.com

A

org.apache.commons.io.comparator package provides various java.util.Comparator implementations for java.io.File. These comparators can be used to sort lists and arrays of files, for example.

Prasad Saya provided a good Java example that uses the org.apache.commons.io.comparator package at javacodegeeks.com Website.

// Source: javacodegeeks.com
// Supports commons-io-2.6
// Supports commons-io-2.5

import org.apache.commons.io.comparator.LastModifiedFileComparator;
import java.io.File;
import java.util.Date;
import java.text.SimpleDateFormat;

public class LastModFileComparatorExample {
   public static void main(String [] args) {
      LastModifiedFileComparator comparator = new LastModifiedFileComparator();
      System.out.println("### Input files ###");
      File dir = new File("C:\\fyicenter\\commons-io-2.6\\");
      File [] files = dir.listFiles();
      printArrayContents(files);
      System.out.println("### Array sorted ###");
      files = comparator.sort(files);
      printArrayContents(files);
   }

   private static void printArrayContents(File [] files) {
      SimpleDateFormat formatter = new SimpleDateFormat("yyyy MMM dd HH:mm");
      for (File file : files) {
         Date date = new Date(file.lastModified());
         System.out.println(formatter.format(date) + "   " + file.getName());
      }
      System.out.println("");
   }
}

You can compile and run the above example in a command window as shown below:

C:\fyicenter>javac -cp C:\fyicenter\commons-io-2.6\commons-io-2.6.jar 
   LastModFileComparatorExample.java

C:\fyicenter>java -cp .;C:\fyicenter\commons-io-2.6\commons-io-2.6.jar 
   LastModFileComparatorExample

### Input files ###
2017 Oct 15 12:00   commons-io-2.6-javadoc.jar
2017 Oct 15 12:00   commons-io-2.6-test-sources.jar
2017 Oct 15 12:00   commons-io-2.6-tests.jar
2017 Oct 15 12:00   commons-io-2.6.jar
2017 Oct 15 12:00   docs
2017 Jun 06 22:21   LICENSE.txt
2017 Oct 14 13:57   NOTICE.txt
2017 Oct 15 11:52   RELEASE-NOTES.txt

### Array sorted ###
2017 Jun 06 22:21   LICENSE.txt
2017 Oct 14 13:57   NOTICE.txt
2017 Oct 15 11:52   RELEASE-NOTES.txt
2017 Oct 15 12:00   commons-io-2.6.jar
2017 Oct 15 12:00   docs
2017 Oct 15 12:00   commons-io-2.6-javadoc.jar
2017 Oct 15 12:00   commons-io-2.6-test-sources.jar
2017 Oct 15 12:00   commons-io-2.6-tests.jar

 

Java Example of org.apache.commons.io.monitor

Java Example of org.apache.commons.io.filefilter

Using commons-io.jar in Java Code

⇑⇑ FAQ for Apache commons-io.jar

2017-04-28, 1258👍, 0💬