第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

按文件名對文件路徑數(shù)組排序

按文件名對文件路徑數(shù)組排序

繁星coding 2022-11-30 13:34:51
我用來directory.listFiles()從給定的目錄結(jié)構(gòu)中遞歸地獲取文件列表。為此,我嘗試使用以下代碼,但它們都不起作用。    Arrays.sort(fList, Comparator.comparing(File::getName));     Arrays.sort(fList, NameFileComparator.NAME_COMPARATOR);文件應(yīng)從所有子目錄中按升序排列。
查看完整描述

3 回答

?
滄海一幻覺

TA貢獻(xiàn)1824條經(jīng)驗 獲得超5個贊

File 是一個可比較的類,默認(rèn)情況下按字典順序?qū)β窂矫M行排序。只需使用,

 Arrays.sort(fList);

如果你想對它們進行不同的排序,你可以定義你自己的比較器。


查看完整回答
反對 回復(fù) 2022-11-30
?
MMTTMM

TA貢獻(xiàn)1869條經(jīng)驗 獲得超4個贊

如果你想在樹結(jié)構(gòu)中遞歸地對所有文件路徑進行排序,你可以嘗試Files.walk使用sortedJava 8 流:


List<String> files = Files.walk(Paths.get("/tmp"))

                         .filter(Files::isRegularFile) // Check you have only file names

                         .map(Path::toString) // map to string

                         .sorted() // sort

                         .collect(Collectors.toList()); // create list

如果你想要不區(qū)分大小寫的排序:


List<String> files = Files.walk(Paths.get("d:/tmp"))

                         .filter(Files::isRegularFile) // Check you have only file names

                         .map(Path::toString) // map to string

                         .sorted(Comparator.comparing(String::toLowerCase)) // sort case insensitive

                         .collect(Collectors.toList()); // create list


查看完整回答
反對 回復(fù) 2022-11-30
?
冉冉說

TA貢獻(xiàn)1877條經(jīng)驗 獲得超1個贊

要列出目錄和子目錄中的所有文件,請使用Apache Commons FilesUtil.listFiles方法


Collection<File> fCollection = FileUtils.listFiles(directory, null, true);

File[] fList = fCollection.toArray(new File[fCollection.size()]);

然后對數(shù)組進行排序,您可以使用


Arrays.sort(fList);


查看完整回答
反對 回復(fù) 2022-11-30
  • 3 回答
  • 0 關(guān)注
  • 199 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號