我希望文件排序此源但我不能..
ArrayList<File> filelist=new ArrayList<File>();
File topdir=new File(System.getProperty("user.dir"));
File[] allfile=topdir.listFiles();
for(int a=0; a<allfile.length; a++)
{
filelist.add(allfile[a]);
}
ex)filelist = [C:\ A.txt,C:\ C.txt,C:\ B.txt,C:\ E.txt,C:\ D.txt,C:\ G.txt, C:\ F.txt] 我想要文件列表排序.... 但我想要filelist = [C:\ A.txt,C:\ B.txt,C:\ C.txt,C:\ D.txt,C:\ E.txt,C:\ F.txt,C: \ G.txt]
答案 0 :(得分:3)
您可以使用Arrays.sort
或Collections.sort
File[] allfile=topdir.listFiles();
Arrays.sort(allfile);
ArrayList<File> filelist=new ArrayList<File>(Arrays.asList(allFile));
或者
File[] allfile=topdir.listFiles();
ArrayList<File> filelist=new ArrayList<File>(Arrays.asList(allFile));
Collections.sort(filelist);
如果你想控制排序的方式,你需要提供一个Comparator
,可以传递给这两种方法......