错误读数性质的Java文件

我的项目目录看起来像这样错误读数性质的Java文件

我收到以下错误线程

异常“主要” java.io.FileNotFoundException: /resources/config.properties(没有这样的文件或目录) java.io.FileInputStream.open0(Native Method) java.io.FileInputStream.open(FileInputStream.java:195)at java.io.FileInputStream。(FileInputStream.java:138)at java.io.FileInputStream。(FileInputStream.java:93)at quartztest.QuartzTest.main(QuartzTest.java:36) /home/seng /。高速缓存/ netbeans的/ 8.1 /执行-片段/ run.xml:53:的Java 返回:1个BUILD FAILED(总时间:0秒)

我如下

Properties prop = new Properties(); 

InputStream input = null;

input = new FileInputStream("/resources/config.properties");

prop.load(input);

回答:

作为资源的代码文件夹是源文件夹,您可以通过以下方式获得InputStream

input = QuartzTest.class.getResourceAsStream("/resources/config.properties"); 

回答:

尝试使用此加载:

所有的

//Get file from resources folder 

ClassLoader classLoader = getClass().getClassLoader();

File file = new File(classLoader.getResource("config.properties").getFile());

回答:

首先,在开始用“/”表示搜索从根开始,而不是从一个子目录。

除此之外,资源文件夹可能在您的项目文件夹中,因此您必须使用getClass()。getClassloader()...来读取文件。然后您只能使用文件名(如果它是唯一的),否则您必须提供使其唯一的路径。

如果使用FileInputStream,则必须提供文件的完整路径。

回答:

在这里我看到两个选项:

  1. input = new FileInputStream("src/main/resources/config.properties");
  2. ClassLoader classloader = Thread.currentThread().getContextClassLoader(); InputStream is = classloader.getResourceAsStream("config.properties"); 第二个是首选,因为你需要指定相对路径根据资源文件夹

如果你不使用这从静态的上下文,你可以简化检索类加载到

ClassLoader classLoader = getClass().getClassLoader(); 

以上是 错误读数性质的Java文件 的全部内容, 来源链接: utcz.com/qa/262196.html

回到顶部