我将config.properties文件放在根目录下,但运行时报:
java.lang.ExceptionInInitializerError
Caused by: java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:61)
at java.io.InputStreamReader.<init>(InputStreamReader.java:80)
at java.util.Properties.load(Properties.java:189)
at com.liuchen.getProperties.<clinit>(getProperties.java:16)
Exception in thread "main"
似乎config.load(in);这里的in是null,但有文件啊,这是怎么回事?谢谢!
已经放在src目录了,但还是报那个错的 InputStream in=getProperties.class.getClassLoader().getResourceAsStream("/config.properties"); 这个也不行啊,这是怎么回事?- public class getProperties {
- private static Properties config = null;
- static {
- InputStream in = getProperties.class.getClassLoader().getResourceAsStream(
- "config.properties");
- config = new Properties();
- try {
- config.load(in);
- in.close();
- } catch (IOException e) {
- System.out.println("No AreaPhone.properties defined error");
- }
- }
- // 根据key读取value
- public static String readValue(String key) {
- // Properties props = new Properties();
- try {
- String value = config.getProperty(key);
- return value;
- } catch (Exception e) {
- e.printStackTrace();
- System.err.println("ConfigInfoError" + e.toString());
- return null;
- }
- }
- // 读取properties的全部信息
- public static void readAllProperties() {
- try {
- Enumeration en = config.propertyNames();
- while (en.hasMoreElements()) {
- String key = (String) en.nextElement();
- String Property = config.getProperty(key);
- System.out.println(key + Property);
- }
- } catch (Exception e) {
- e.printStackTrace();
- System.err.println("ConfigInfoError" + e.toString());
- }
- }
- public static void main(String args[]) {
- // String LaSaPhone=config.getProperty("LaSaPhone");
- // System.out.println(LaSaPhone);
- // System.out.println(getPhone.readValue("LaSaPhone"));
- getProperties.readAllProperties();
- }
- }
复制代码 |