目前有一个项目,需要对目录下的文件进行排序,并按照时间进行排列。

1. 通过ImageFilter对xls文件进行过滤

  ImageFilter类对象的任务就是提供一个accept( )的方法。回调能提高程序的灵活性。

  FilenameFilter filter = new FilenameFilter() {
public boolean accept(File dir, String filename) {
return filename.endsWith(".xls");
}
};

2.获取目录下面的后缀是xls的文件,存放在数组中。

String filePath = Environment.getExternalStorageDirectory().getPath()+ "/topseed/";
File pfile = new File(filePath);
if (!pfile.exists())
pfile.mkdir();
File[] files = pfile.listFiles(filter);

3. 从数据中获取具体的信息,存放取得的文件到listexcel列表中

4. 按照时间先后进行排序。 通过修改类 FileComparator 的返回值,可以按照不同的时间顺序进行排列。

  Collections.sort(listexcel,new FileComparator());

5. FileComparator的类具体实现为:

public class FileComparator implements Comparator<FileInfo> {

@Override
public int compare(FileInfo lhs, FileInfo rhs) {
if (lhs.lastModified < rhs.lastModified)
return 1;
else
return -1;
}
}