如何提供属性文件的绝对路径。
autoamtion_environment_properties = new Properties();
InputStream iStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(("C:\\automation_environment.properties"));
这是null pointer exception
。
如果我在项目根文件夹中有此文件,它可以工作,但我需要从外部访问它。知道需要做什么吗?
感谢。
答案 0 :(得分:3)
该文件必须位于CLASSPATH中才能生效。您的IDE会为您解决困难,但是当您没有拐杖时,您需要知道自己在做什么。包括.properties文件在CLASSPATH中所在的目录。
答案 1 :(得分:1)
如果您知道文件的完整路径,则可以使用FileInputStream类
InputStream iStream = new FileInputStream(new File("C:\\automation_environment.properties"));
答案 2 :(得分:0)
为什么不使用FileInputStream而不是那些疯狂的Thread东西?
InputStream in = new FileInputStream(new File("C:\\automation_environment.properties"));
http://docs.oracle.com/javase/6/docs/api/java/io/FileInputStream.html
答案 3 :(得分:0)
我会尝试将\设置为/取而代之:
InputStream iStream = Thread.currentThread().getContextClassLoader().getResourceAsStream(("C:/automation_environment.properties"));