Jar访问外部文件

时间:2016-06-01 13:38:42

标签: java eclipse file jar

我有一个像这样的文件夹:

MyFolder文件:

  • file1.xml
  • file2.xml
  • project.jar

但如果我在课堂上使用:

File f = new File("file1.xml");

我收到错误,因为它找不到该文件。为什么呢?

2 个答案:

答案 0 :(得分:0)

如果您使用的是Windows,则您发布的代码将起作用,但不适用于默认父文件位于您家中的Linux。 但是你可以在任何操作系统中使用:

public class MyClass {
  public void loadFile() {
    URL url = MyClass.class.getProtectionDomain().getCodeSource().getLocation();
    File jar = new File(url.toURI());
    File f = new File(jar.getParent(), "file1.xml");
    //your code
  }
}

PS:这需要在project.jar中,因为你得到了jar文件所在的位置。

答案 1 :(得分:0)

您应该在代码中使用相对路径。

示例:File f = new File("./file1.xml");