該目錄有n個文件。我正在創建類,它將使用java arraylist按目錄中的大小對文件進行排序。使用java數組列表按大小對文件進行排序
我可以讀取文件名和大小。但如何按大小對文件進行排序?
import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
public class SortingFiles
{
public static void main(String[] args)
{
File dir=null;
File[] paths;
final ArrayList<String> al= new ArrayList<String>();
try{
// create new file object
dir = new File("D:\\New folder\\New");
// array of files and directory
paths = dir.listFiles();
ArrayList<File> fileList = new ArrayList<File>();
for(File file:paths)
{
// prints filename and directory name
System.out.println(file.getName()+" - " +file.length());
al.add(file.getName());
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
我試圖通過大小
for(int i=1; i<al.size(); i++)
{
System.out.println("\n Aftr : " +al.get(i));
}
的文件進行排序,但它無法正常工作。任何一個可以幫助me..I正在嘗試沒有「進口org.apache。 commons.io.FileUtils;」。那麼該怎麼辦 ?
的可能重複[我怎樣才能在Java中的目錄中的文件進行排序?](http://stackoverflow.com/questions/8107001/how-can-i-sort-files-in-a-directory -in-java)&[如何根據名稱,大小和上次修改的順序對目錄列表進行排序?](http://stackoverflow.com/questions/13091517/how-can-i-sort-a-directory-listing -ccording-name-size-last-modified) – OO7 2014-11-25 06:59:13