2015-03-31 5 views
0

У меня есть список Path (java.nio.file).Вывод наиболее длинных путей

Например

/a/b/c/d 
/a/b/c 
/a/b/ 
/a/x/y/z 
/a/x/ 

Из этих путей я должен получить только длинный путь.

Например, /a/b/c/d и /a/x/y/z являются самыми длинными путями.

Как получить, используя или не используя какие-либо методы в интерфейсе Path в java?

+1

path.getNameCount(), может быть? См. Http://docs.oracle.com/javase/7/docs/api/java/nio/file/Path.html#getNameCount%28%29 – BretC

ответ

1

Попробуйте этот код:

import java.nio.file.Path; 
import java.nio.file.Paths; 

public class PathTest { 
    public static void main(String[] args) { 
     String path = "https://stackoverflow.com/a/b/c/d"; 
     Path p = Paths.get(path); 
     int num = p.getNameCount(); 
     System.out.println(num); // prints 4 
    } 
} 
+0

Можно ли получить листовой узел? – Arun

+1

Используйте 'p.getName (num-1)' или 'p.getName (p.getNameCount() - 1)' –

Смежные вопросы