Java 如何访问JAR外部的文件夹

Java 如何访问JAR外部的文件夹,java,jar,pathing,Java,Jar,Pathing,我在Eclipse中有一个读写新文件的项目——它与Eclipse一起工作,但当我将它保存到jar中时,它就不再工作了。例如: readConfig(newFile(Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath() + "chronos/Functions/config")); 因此,如何从外部源加载文件(假设无法在jar中加载)?。例如,如果我把我的JAR放在一个名为data的文件夹中,我会

我在Eclipse中有一个读写新文件的项目——它与Eclipse一起工作,但当我将它保存到jar中时,它就不再工作了。例如:

readConfig(newFile(Settings.class.getProtectionDomain().getCodeSource().getLocation().getPath() + "chronos/Functions/config"));
因此,如何从外部源加载文件(假设无法在jar中加载)?。例如,如果我把我的JAR放在一个名为data的文件夹中,我会键入什么来访问该数据文件夹?

  • 如果您只需要读取,您应该能够使用
    getResourceAsStream()
    读取jar中的文件
  • 如果要读写,请使用jar文件旁边的文件夹。看看答案
      • 如果您只需要读取,您应该能够使用
        getResourceAsStream()
        读取jar中的文件
      • 如果要读写,请使用jar文件旁边的文件夹。看看答案

      “./data”应该做这项工作。您必须从哪个特定位置读取/写入文件?您可以始终使用
      System.getProperty(“user.home”)
      获取用户的主目录,然后从那里遍历是的,@Marged说了什么。/data”应该做这项工作。您必须从哪个特定位置读取/写入文件?您可以始终使用
      System.getProperty(“user.home”)
      获取用户的主目录,然后从那里遍历是的,@Marged说了什么