- 第一个问题(实际上这个我需要更多)
醇>
我搜索了谷歌,但我找不到怎么做。 例如,我有路径:
C:\Users\Alexander\Desktop\Hello\Hello2\AudioFile.mp3
我想获取包含此File
的驱动器卷的名称,此处为 C
我到目前为止所做的是:
new File(path).substring(0,1);
但是如果驱动器有两个字母怎么办..
- 第二个问题
醇>
如果我想获得它存在的文件的第3个父项(桌面),该怎么办。
您能否就上述问题提供答案?
PS:
我找到Paths.get(path).getRoot().toString()
但它返回C:\
答案 0 :(得分:0)
Apache Commons IO有一个FilenameUtils类,其getPrefix()方法执行您在问题1中提出的问题。
我想你可以从Apache Commons IO找到解决2个问题的方法。
String filename = "C:\Users\Alexander\Desktop\Hello\Hello2\AudioFile.mp3";
String prefix = FilenameUtils.getPrefix(filename);
System.out.println("Prefix: " + prefix);
String path = FilenameUtils.getPath(filename);
System.out.println("Path: " + path);
String fullPath = FilenameUtils.getFullPath(filename);
System.out.println("Full path: " + fullPath);
String name = FilenameUtils.getName(filename);
System.out.println("Name: " + name);
String baseName = FilenameUtils.getBaseName(filename);
System.out.println("Base name: " + baseName);
String extension = FilenameUtils.getExtension(filename);
System.out.println("Extension: " + extension);