2013-04-11 10 views
1

코드 new FileInputStream("config.properties")을보고 있습니다.절대 경로 찾기

내 프로젝트의 여러 위치 (Windows 파일 검색)에서 동일한 "config.properties"파일이 있는데이 함수 호출을 참조하는 파일이 어느 것인지 혼동합니다. 절대 경로 파일을 어떻게 알 수 있습니까?

나는 인터넷에서 이것을 발견했지만이 위치는 옳은 대답처럼 보이지 않습니다.

"ClassName".class.getProtectionDomain().getCodeSource().getLocation().getPath() 그러나이 것은 아닙니다.

File f = new File("config.properties"); 
System.out.println(f.getAbsolutePath()); 

반환 된 경로는 현재 작업 디렉토리에서 추론 할 것이다 : 만약 내가 잘못 당신은 File을 사용할 수 있습니다

+0

파일 file = new File ("config.properties"); file.getAbsolutePath(); – NullPointerException

+0

오른쪽. 나는 FileInputStream 클래스를보고 있었고 절대 경로를 찾을 수있는 방법이 있다면 시도했지만 File 클래스에 경로 이름을 전달한 다음 대답을 찾을 수 있습니다. –

답변

6

당신은 그것을 수정하시기 바랍니다 수 있습니다.

+0

감사합니다. 내 프로그램의 상대 경로를 변경하고 해당 디렉토리를 기본 디렉토리로 사용하는 다른 디렉토리를 참조 할 수있는 방법이 있습니까? –

+0

'new file ("" ")'을 사용하여 프로그램의 현재 디렉토리를 결정할 수 있습니다. 그런 다음 모든 경로를 구성하십시오. – hmjd

+0

. 하지만 좀 더 관련성이있는 다른 디렉토리로 참조 포인트를 변경할 수 있습니까? –

1
File f = new File("config.properties"); 
String dirPath = file.getParentFile().getAbsolutePath() 
+0

. 내 프로그램의 상대 경로를 변경하고 해당 디렉토리를 기본 디렉토리로 사용하는 다른 디렉토리를 참조 할 수있는 방법이 있습니까? –