从Windows路径字符串中提取驱动器号

时间:2015-11-11 01:00:26

标签: java windows path drive drive-letter

const input = [1, 2, 3]; console.log(input.map(item => item + 1)); // [2, 3, 4] 中是否有任何内置的跨平台方式来解析Java路径字符串并提取Windows的根路径(包括驱动器号)?

根据Java SE documentation,可以使用Windows类,例如

java.nio.file.Path

但是,String path = "C:\\this\\is\\a\\windows\\file path.txt" Path p = Paths.get(path); String drive = p.getRoot(); 对象构造是特定于操作系统的,这意味着如果上述代码仅在Path中执行时才会返回驱动器号;否则,它只返回Windows

当然,可以使用自定义方法(例如,正则表达式或简单的字符串处理)来检索驱动器号(如果存在),但是是否已经在Java中实现了任何跨平台方式?

1 个答案:

答案 0 :(得分:1)

Java中似乎没有内置的跨平台方式来检索文件的根路径(例如驱动器),因此第三方库或自定义代码是唯一的解决方案。

Apache Commons IO有一个FilenameUtils类,其getPrefix()方法完全符合问题。