我有一个非常基本的问题。我需要一个URL对象,但该文件位于相对于项目的上一个目录中。
例如,如果我这样做
File testFile = new File("../../data/myData.xml");
工作得非常好,它找到了文件
然而,
URL testURL = new URL("file:///../../data/myData.xml")
给出
线程“main”中的异常java.io.FileNotFoundException:/../../ data / myData.xml
任何想法,如何解决,解决这个问题?没有改变数据的位置?
提前多多感谢 Altober
答案 0 :(得分:2)
你可以用这个
URL testURL = new File("../../data/myData.xml").toURI().toURL();
答案 1 :(得分:1)
/**
* @param args
*/
public static void main(String[] args) {
try {
URL testUrl = new URL("file://C:/Users/myName/Desktop/abc.txt");
System.out.println(testUrl.toString());
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}
上面的代码是工作文件,只是测试了它,所以你需要使用file://并且如果可能的话尝试完整路径
答案 2 :(得分:0)
线程“main”中的异常java.io.FileNotFoundException:/../../ data / myData.xml
请注意,它正在查找根目录的父目录,而不是当前目录。
我不知道文件网址是否可以引用相对路径,请尝试
'新网址(“file://../../data/myData.xml”)''