假设我有一个绝对的“基本”路径:
/home/someone/dir1/dir2/
用户可以向我传递一个新路径,该路径可以是绝对路径,也可以是相对于基本路径的相对路径,因此以下内容均有效:
..
/home/someone/dir1/
我如何让 java 给我正确的绝对路径,即对于这两种情况:
/home/someone/dir1/
并以独立于平台的方式做到这一点?
我尝试了以下方法:
File resolvedFile = new File((new File(basePath).toURI().resolve(new File(newPath).toURI())));
但是,如果 newPath 是相对的,newFile(newPath) 会根据当前工作目录自动解析它,而不是我想要提供的 basePath。
有什么想法吗?非常感谢!