我正在编写一个java程序来读取路径在设置xml文件中的文件。并且路径不是绝对的,而是相对于xml文件。那么我该如何将当前目录更改为xml文件的目录,然后使用相对文件路径打开文件?
答案 0 :(得分:0)
您无法重新分配流程的默认工作目录 - 它是在JVM启动时提供给您的程序的,并且在程序的整个生命周期内都不会更改。
为了评估相对路径,从原始路径(XML文件),文件路径分隔符和相对路径构造绝对路径:
String xmlFilePath = "c:\\temp\\xml\\my_file.xml";
String relativePath = "..\\resources\\file.ico";
String resourcePath = "c:\\temp\\xml\\..\\resources\\file.ico";
Java会将这类路径解释为"c:\\temp\\resources\\file.ico"
。
答案 1 :(得分:0)
没有必要这样做,因为你可能有一些绝对的Path
并解决它的路径:
Path basePath = ...
Path resourcePath = basePath.resolve(relativePath);