SORU
26 AĞUSTOS 2011, Cuma


nasıl Dosya için.alfabetik sırayla listFiles?

Aşağıdaki gibi bir kod var:

class ListPageXMLFiles implements FileFilter {

        @Override
        public boolean accept(File pathname) {
                DebugLog.i("ListPageXMLFiles", "pathname is "   pathname);

                String regex = ".*page_\\d{2}\\.xml";
                if(pathname.getAbsolutePath().matches(regex)) {
                        return true;
                }
                return false;
        }
}

public void loadPageTrees(String xml_dir_path) {
        ListPageXMLFiles filter_xml_files = new ListPageXMLFiles();
        File XMLDirectory = new File(xml_dir_path);
        for(File _xml_file : XMLDirectory.listFiles(filter_xml_files)) {
                loadPageTree(_xml_file);
        }
}

FileFilter güzel çalışıyor, ama listFiles() ters alfabetik olarak dosyaları Listeleme gibi görünüyor. listFile() dosyaları alfabetik olarak listelemek için söylemenin daha hızlı bir yolu var mı?

CEVAP
26 AĞUSTOS 2011, Cuma


listFiles yöntemi, ya da bir filtre olmadan herhangi bir sıra garantisi vermez.

Ancak Arrays.sort() sıralayabilirsiniz olan bir dizi döndürür.

File[] files = XMLDirectory.listFiles(filter_xml_files);
Arrays.sort(files);
for(File _xml_file : files) {
    ...
}

Bu File varsayılan yol adlarını lexicographically hangi tür benzer bir sınıf, çünkü çalışır. Eğer onları farklı şekilde sıralamak isterseniz, kendi benzer tanımlayabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CorridorDigital

    CorridorDigi

    17 Mayıs 2010
  • MandMEvangelists

    MandMEvangel

    28 Ocak 2008
  • Kanál používateľa McsFuego

    Kanál použ

    12 EKİM 2011