java.util.Arrays 를 이용한 배열Sort이다.
경로의 파일리스트를 구한 후 java.util.Arrays 와 java.util.Comparator를 이용하여 파일을 정렬해보았다.
public void sortArrays(){
File[] files = new File("경로").listFiles(); //경로에 있는 파일목록구함
files = sortFileList(files,COMPARETYPE_DATE); // Date로 Sort실행
for(File file : files){
Sytem.out.println("COMPARE DATE : "+file.lastModified());
}
files = sortFileList(files,COMPARETYPE_NAME); // Name으로 Sort실행
for(File file : files){
Sytem.out.println("COMPARE NAME : "+file.getName());
}
}
public int COMPARETYPE_NAME = 0;
public int COMPARETYPE_DATE = 1;
public File[] sortFileList(File[] files, final int compareType)
{
Arrays.sort(files,
new Comparator<Object>()
{
@Override
public int compare(Object object1, Object object2) {
String s1 = "";
String s2 = "";
if(compareType == COMPARETYPE_NAME){
s1 = ((File)object1).getName();
s2 = ((File)object2).getName();
}
else if(compareType == COMPARETYPE_DATE){
s1 = ((File)object1).lastModified()+"";
s2 = ((File)object2).lastModified()+"";
}
return s1.compareTo(s2);
}
});
return files;
} |
이거말고 List 를 Sort하기 위한 CollectionSort 의 예제를 기존에 포스팅한적 있는거같은데... 어딘가 찾아보면 나올꺼다 -ㅅ-
[작성자] devbible.tistory.com