티스토리 뷰


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


댓글