为什么我的系统找不到我的属性文件?

时间:2015-09-02 02:34:06

标签: java java-io filenotfoundexception

我在admin.properties下有一个名为src/config的属性文件,每当我运行该程序时,它都会给我这个错误:

  

java.io.FileNotFoundException:admin.properties(系统找不到指定的文件)

这是我的代码:

package com.in.props;

public class Props {
    public static void main(String[] args) {
        String filePath = "config/admin.properties";
        Properties adminProps = new Properties();
        adminProps.load(new FileInputStream(filePath));
        String userName = adminProps.getProperty("userName").trim();
        String password = adminProps.getProperty("password").trim();
    }
}

这是属性文件admin.properties:

userName=test
password=test

我的Props课程(在com.in.props中)和admin.properties(在config中)位于不同的目录中。

Project_Root
-src
 -config
   -admin.properties
 -com
   -in
     -props
       -Props.java

我没有使用eclipse,我想通过命令提示符执行此操作。

1 个答案:

答案 0 :(得分:3)

使用ClassLoader加载文件要容易得多。使用getClass().getResourceAsStream()获取类路径中的文件:

InputStream is = Props.class.getResourceAsStream("/src/config/admin.properties");
if(is != null) {
    Properties adminProps = new Properties();
    adminProps.load(is);

请注意,前导斜杠非常重要。