Java InputStream为空
在我正在做的一个项目中Java InputStream为空,java,inputstream,Java,Inputstream,在我正在做的一个项目中 String cwd; String file_separator; public ConfigLoader() { cwd = get_cwd(); file_separator = get_file_separator(); try { Properties c = new Properties(); InputStream in = this.getClass().getClassLoader()
String cwd;
String file_separator;
public ConfigLoader()
{
cwd = get_cwd();
file_separator = get_file_separator();
try
{
Properties c = new Properties();
InputStream in = this.getClass().getClassLoader().getResourceAsStream(cwd +
file_separator + "data" + file_separator + "configuration.properties");
c.load(in);
}
except (Exception e) { e.printStackTrace(); }
}
public String get_file_separator()
{
File f = new File("");
return f.separator;
}
public String get_cwd()
{
File cwd = new File("");
return cwd.getAbsolutePath();
}
但由于某种原因,c.load(in)代码>导致一个NullPointerException
。异常源于in==NULL
为true。我不明白为什么,因为
System.out.println(cwd + file_separator + "data" + file_separator +
"configuration.properties");
印刷品
/users/labnet/st10/jjb127/workspace/Brewer-Client/data/configuration.properties
这是我想要使用的文件的位置
想法?getResourceAsStream
旨在搜索类路径上的文件,而不是访问本地文件系统。在这种情况下,您必须使用FileInputStream
InputStream in = new FileInputStream(cwd +
file_separator + "data" + file_separator + "configuration.properties");