我只是想弄清楚如何根据名称,上次修改时间和大小对目录列表进行排序。我知道您可以访问文件的名称,大小,最后使用File方法修改的时间,但是我不确定如何对其进行排序。如果有人能指出我正确的方向,那就太好了。
public void printDirectoryContents(String path, PrintWriter writer) { File[] list = root.listFiles(); Arrays.sort(list); for ( File f : list ) { String name = f.getName(); long lastmod = f.lastModified(); SimpleDateFormat simple = new SimpleDateFormat("dd-MMM-yyyy HH:mm"); String formatted = simple.format(new Date(lastmod)); long length = f.length(); } }
您应该实现一个Comparator来根据您提到的属性对文件进行排序,并将其作为参数传递给Arrays.sort方法。
Arrays.sort(list, new Comparator<File>() { public int compare(File file1, File file2) { int result = ... .... comparison logic return result; } });