目前有一個項目,需要對目錄下的文件進行排序,並按照時間進行排列。
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;
}
}