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

  • FUzzyBUnnyBOoties

    FUzzyBUnnyBO

    3 EKİM 2007
  • KliptOut KwazeeKilla

    KliptOut Kwa

    24 ŞUBAT 2010
  • Liam Underwood

    Liam Underwo

    19 Mayıs 2009