我在获取properties文件时候使用绝对路径不知道为啥就是读不到,但是使用相对路径就可以,这是为什么,这个方法不能识别盘符吗?
  String s = "";
                //获取配置文件
                Properties p = new Properties();
                ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
                System.out.println(Thread.currentThread().getContextClassLoader().getResource(""));
     is = classLoader.getResourceAsStream("E:/workspace/ah/OdmTest/src/com/tydic/test/crm/server/server.properties");
     p.load(is);
这是我的代码,文件位置没有错但是一直找不到,求解!!

解决方案 »

  1.   

    Thread.currentThread().getContextClassLoader().getResource("")是得到当前的classpath的绝对路径的URI表示法。
    classLoader.getResourceAsStream("路径")  是从你的classPath开始获取文件,你这样写绝对路径肯定是获取不到了。要想写绝对路径:
    如下可实现:
    properties = new Properties();  
     InputStream is= new  BufferedInputStream(new FileInputStream("/home/bighead/partitionHbase/conf/core.properties"));  
      properties.load(is);