java.util.Properties $ LineReader.readLine

Ume*_*iya 7 java properties

我需要读取配置文件我在运行以下代码时遇到此错误:

java.util.Properties$LineReader.readLine

文件config.cfg存在并具有r/w权限.

import java.util.*;
import java.util.Properties;

public class Config   
{
 Properties configFile;
 public Config()
 {
configFile = new java.util.Properties();
try {           
  configFile.load(this.getClass().getClassLoader().
  getResourceAsStream("config.cfg"));           
}catch(Exception eta){
     eta.printStackTrace();
}
}

public String getProperty(String key)
{

 String value = this.configFile.getProperty(key);       
 return value;

 }

}
Run Code Online (Sandbox Code Playgroud)

编辑 - 完全错误

 [java] java.lang.NullPointerException
 [java]     at java.util.Properties$LineReader.readLine(Properties.java:418)
 [java]     at java.util.Properties.load0(Properties.java:337)
 [java]     at java.util.Properties.load(Properties.java:325)
 [java]     at Config.<init>(Unknown Source)
 [java]     at ClosureBuilder.<clinit>(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

编辑 - 目录结构

SRC

- > config.java

- > config.cfg

hel*_*hod 8

你必须把你config.cfg的文件放在你文件所在的.class文件夹中.

  • 更具体地说,您必须将它放在包结构头部的文件夹中.在这种情况下,没有包结构,所以你的答案是正确的,但一般情况下它不会.如果他使用了Class.getResourceAsStream(),那也是正确的,但他没有. (2认同)