我不知道发生了什么事。我想访问一个包含多个文件的目录:
folder\\1.txt 2.txt 3.txt....
现在我想根据它们的出现来阅读它们我的意思是首先是最低的,我只想按升序读取它们! 我的代码是:
File f=new File("xxx");
File[] files = f.listFiles();
for (File ff : files) {
if(ff.isFile()) {
System.out.println(ff.toString());
}
}
到目前为止代码工作正常,但它将文件作为
1.txt
10.txt
11.txt
9.txt
8.txt
...
所以出了什么问题我想按升序顺序阅读它们
答案 0 :(得分:1)
按 Arrays.sort 排序:
Arrays.sort(files, new Comparator<File>() {
public int compare(File o1, File o2) {
int n1 = getNum(o1.getName());
int n2 = getNum(o2.getName());
return n1 - n2;
}
}
private int getNum(String name) {
int i;
// extract number from the file name here by doing some processes
return i;
}