2017-10-16 82 views
0

我有很多子文件夾的文件夾main這樣Java的路徑獲得最後一個文件夾ID

1 
2 
4 
7 
10 

我想獲得的最後一個文件夾的ID的收藏。在這種情況下,文件夾「10」。我怎樣才能在Java 8中做到這一點?

+0

你是什麼意思與'最後一個文件夾'?以自然順序排列的最後一個或最後一次修改的順序(根據更新目錄時間戳時操作系統可能有所不同)。 – SubOptimal

+0

還是最近創建的?或者當名稱被解釋爲數字時具有最高值的那個?或不解釋爲數字? – EJP

+0

「當名稱被解釋爲數字時具有最高值的那個」那一個 – isADon

回答

0

您可以按最後修改日期的文件夾,如:

public static String lastFolder() throws IOException { 

     Stream<Path> dirList = Files.list(Paths.get("your_directoy_ath")).sorted(new Comparator<Path>() { 
      @Override 
      public int compare(Path path1, Path path2) { 
       Long file1Name = path1.toFile().lastModified(); 
       Long file2Name = path2.toFile().lastModified(); 
       return file2Name.compareTo(file1Name); 

      } 
     }); 

     return dirList.collect(Collectors.toList()).get(0).getFileName().toString(); 
    } 

您可以修改排序方法根據自己的需要,如果你需要通過name..can做到這一點

相關問題