Apache Commons IO - NameFileComparator

NameFileComparator confronta i nomi di due file. Può essere utilizzato per ordinare gli elenchi o gli array di file, utilizzando il loro nome, in modo che sia case-sensitive, case-insensitive o dipendenti dal sistema.

Dichiarazione di classe

Di seguito è riportata la dichiarazione per

org.apache.commons.io.comparator.NameFileComparator Classe -

public class NameFileComparator
   extends Object implements Serializable

Esempio di classe NameFileComparator

Ecco il file di input che dobbiamo analizzare:

Welcome to TutorialsPoint. Simply Easy Learning.

IOTester.java

import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import org.apache.commons.io.IOCase;
import org.apache.commons.io.comparator.NameFileComparator;
import org.apache.commons.io.filefilter.FileFileFilter;
public class IOTester {
   public static void main(String[] args) {
      try {
         usingNameFileComparator();
      } catch(IOException e) {
         System.out.println(e.getMessage());
      }
   }
   public static void usingNameFileComparator() throws IOException {
      //get the current directory
      File currentDirectory = new File(".");
      NameFileComparator comparator = new
      NameFileComparator(IOCase.INSENSITIVE);
      File[] sortedFiles = comparator.sort(currentDirectory.listFiles((FileFilter)FileFileFilter.FILE));
      System.out.println("Sorted By Name: ");
      for(File file:sortedFiles) {
         System.out.println(file.getName());
      }
   }
}

Produzione

Stamperà il seguente risultato.

Sorted By Name:
.classpath
.project
input.txt