我正在使用Windows 10,最新的JDK。
System.out.println(new File("F:\\some\\path\\to\\file.wav").getAbsolutePath());
此打印:
F:\some\path\project_folder\F:\some\path\to\file.wav
!!!
您能解释一下我在这里误会什么吗?我什至尝试过
new File(URI.create("file:///F:/some/path/to/file.wav"))
但给我
/F:/some/path/to/file.wav
(前导/错误)
仅使用2个斜杠file://F:/some/path/to/file.wav
进行尝试,我得到一个例外
java.lang.IllegalArgumentException: URI has an authority component
更新
这仅在我引用分区F:\
中的文件时发生(顺便说一下,项目本身也在F:\
中)。尝试引用系统驱动器C:\
正常。
更新2
原来在文件和项目之间共享了一些父目录(在我的示例中为F:\some\path\
)。也许这是原因?!
我尝试了new File("..\\to\\file.wav")
,但也打印了错误的F:\some\path\project_folder\..\to\file.wav
答案 0 :(得分:-2)
您可以从Windows文件资源管理器复制路径 在路径字符串中使用/而不是\