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

  • filmurfreakur

    filmurfreaku

    29 Mart 2007
  • The White House

    The White Ho

    21 Ocak 2006
  • TheJoeycool2010

    TheJoeycool2

    12 Temmuz 2010