[Filename Sort] File 리스트를 불러와 이름순으로 Sort시키기

Posted by [하늘이]
2010. 12. 16. 11:26 IT/Android[안드로이드]
반응형
특정 directory에서 파일이름들을 가져와 List시킨 후에는 Sort시키는 것 보다,
파일 리스트를 가져오는 단계에서 sort를 시켜면, 손이 훨씬 덜 갑니다.

특히 가져온 정보를 만든 객체에 넣고, List화 시켜면, 더욱 그렇죠.

예제 소스입니다.
---------------------------------------------------------------------------
소트 내용
public class UtilsFileNameSort {
public static void sort(File[] filterResult){
// 파일명으로 정렬한다. 
Arrays.sort(filterResult, new Comparator() {
public int compare(Object arg0, Object arg1) {
File file1 = (File)arg0;
File file2 = (File)arg1;
return file1.getName().compareToIgnoreCase(file2.getName());
}
});
}
}
--------------------------------------------------------------------------
사용예제.

public static void loadpath(String sPath, ArrayList<SettingsPathInfo> arrLData, int nType){
File home = new File(sPath);
File filterResult[] = home.listFiles(new SettingsFileFilter(nType));
if(filterResult==null)
return;
UtilsFileNameSort.sort(filterResult);
            
//아래쪽에서 사용전에 위에서 정렬시켜줌니다.
if(filterResult.length >0){
for(File file : filterResult){
SettingsPathInfo temp = new SettingsPathInfo();
temp.mFullpath = file.getPath();
temp.mName = file.getName();
arrLData.add(temp);
}
}
}


반응형