Apache Commons IO - SizeFileComparator

SizeFileComparator compara os tamanhos de dois arquivos / diretório. Ele pode ser usado para classificar as listas ou matrizes de arquivos usando seu tamanho ou diretórios, com base no número de filhos.

Declaração de Classe

A seguir está a declaração para

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

public class SizeFileComparator
   extends Object implements Serializable

Exemplo de classe SizeFileComparator

Aqui está o arquivo de entrada que precisamos analisar -

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.comparator.SizeFileComparator;
import org.apache.commons.io.filefilter.FileFileFilter;
public class IOTester {
   public static void main(String[] args) {
      try {
         usingSizeFileComparator();
      } catch(IOException e) {
         System.out.println(e.getMessage());
      }
   } 
   public static void usingSizeFileComparator() throws IOException {
      //get the current directory
      File currentDirectory = new File(".");
      SizeFileComparator comparator = new SizeFileComparator();
      File[] sortedFiles = comparator.sort(currentDirectory.listFiles((FileFilter)FileFileFilter.FILE));
      System.out.println("Sorted By Size: ");
      for(File file:sortedFiles) {
         System.out.println(file.getName() + ", size(kb) :" + file.length());
      }
   }
}

Resultado

Irá imprimir o seguinte resultado.

Sorted By Size:
input.txt, size:124
.project, size:382
.classpath, size:441