2013-03-08 1 views
0

나는 다음과 같은 디렉터리 구조를 가질 경우, + SRC참조 속성은 src 디렉토리 외부 파일을


++ com.foo.util
+++ FooProperties.java
+ foo.properties

foo.propertiesFooProperties의 리소스 스트림으로 어떻게 참조합니까? 나는 클래스 경로에 추가하고 등을 참조,

FooProperties.class.getResourceAsStream("/foo.properties") 

하지만 난 NullPointerException를 얻을 시도했습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 당신이 src (src과 동일 수준) 외부 properties 파일을 유지하려면

+0

'/ src' 안에 넣으십시오. 그렇지 않으면 하드 코드해야한다고 생각합니다. –

+0

'/ foo.properties'는 파일이 클래스 경로의 루트에 있음을 의미합니다. 그것이 calsspath에 없다면 절대 경로를 제공해야합니다. –

답변

3

, 당신은 당신 properties 파일이 방법을 가져올 수 있습니다 : -

try { 
    InputStream fileStream = new FileInputStream(new File(
      "test.properties")); 
    Properties props = new Properties(); 
    props.load(fileStream); 
    String myPropValue = (String) props.get("test.prop"); 
    System.out.println(myPropValue); 
} catch (FileNotFoundException e) { 
} catch (IOException e) { 
} 

그것이 도움이되기를 바랍니다. 위의 방법을 사용하여 특성 파일을 편집 할 수도 있습니다 (절대 경로는 필요하지 않음).