2015-05-20 2 views
0

Эта программа просто сортирует папку файлов изображений по размеру и выводит их в новый каталог. Однако всякий раз, когда я просматриваю каталог, он не поддерживается в отсортированном порядке. Любые решения были бы полезными.Запись файлов в каталог в отсортированном порядке

Вот соответствующие фрагменты кода

class CompareFileSize implements Comparator<File>{ 
    public int compare(File s1, File s2) { 
     long len1 = s1.length(); 
     long len2 = s2.length(); 

     if (len1 > len2){ 
      return 1; 
     }else if (len1 < len2){ 
      return -1; 
     }else 
      return 0; 
    } 
} 
public class FileSorter { 

    public static void main(String[] args) throws IOException { 
     File p = new File("C:\\Users\\PC\\Desktop\\newFolder"); 
     File f = new File("C:\\Users\\PC\\Desktop\\oldFolder"); 
     File myPics [] = f.listFiles(); 
     ArrayList<File> aList = new ArrayList<File>(); 

     for (int i = 0; i < myPics.length; i++){ 
      aList.add(myPics[i]); 

     } 
     System.out.println("Before----------------------------------------"); 
     for (File uimage: aList){ 
      System.out.println(uimage); 
     } 

     System.out.println("After-----------------------------------------"); 

     Collections.sort(aList, new CompareFileSize()); 

     for (File image: aList){ 
      System.out.println(image); 
      FileUtils.copyFileToDirectory(image, p); 
     } 

     } 

    } 
+1

Как вы "* просматриваете каталог *"? –

ответ

3

Однако всякий раз, когда я просмотреть каталог это не поддерживается в отсортированном порядке. Любые решения были бы полезными.

Почему может быть врожденной для того, чтобы, как файлы хранятся в папке, ваш зритель каталог всегда будет переопределить с текущим предпочтением (сортировкой по размеру файла, сортировать по дате модифицировано, сортировать по названию в алфавитном порядке).

Ваш код не имеет никакого эффекта.

+0

Код может повлиять на сортировку по дате изменения. –

+0

Хорошая точка, предполагая, что зритель настроен на этот режим. –

+0

Спасибо, я не знал, что вы не можете хранить их в порядке, указанном в коде. – user4918662

Смежные вопросы