java.io.File을 사용하여 파일에 액세스하려고 할 때 "시스템이 지정된 경로를 찾을 수 없습니다"라는 오류가 발생하는 경우 ," 상대 경로 문제로 인해 발생하는 경우가 많습니다. Java에서 상대 경로는 현재 작업 디렉터리에 따라 달라지므로 Java 코드 내에서 제어하기 어렵습니다.
해결책:
Java에서 상대 경로를 사용하는 대신. io.File, 클래스 경로에서 직접 파일을 가져옵니다. 이 방법을 사용하면 현재 작업 디렉토리에 관계없이 파일이 항상 프로젝트 디렉토리를 기준으로 위치하게 됩니다.
클래스 경로에서 파일을 얻으려면:
<code class="java">URL url = getClass().getResource("ListStopWords.txt"); File file = new File(url.getPath());</code>
이 접근 방식은 프로젝트가 JAR 파일로 패키지되거나 다른 환경에 배포된 경우에도 파일 위치는 프로젝트 내에서 일관됩니다.
입력 스트림의 대안:
만약 파일에 대한 입력 스트림이 필요하면 다음을 사용할 수 있습니다.
<code class="java">InputStream input = getClass().getResourceAsStream("ListStopWords.txt");</code>
속성 파일:
파일이 키-값 쌍이 있는 속성 파일인 경우 속성 객체에 직접 로드할 수 있습니다:
<code class="java">Properties properties = new Properties(); properties.load(getClass().getResourceAsStream("ListStopWords.txt"));</code>
참고:
정적 컨텍스트 내에서 파일에 액세스할 때 getClass() 대신 YourClass.class를 사용하세요. .
위 내용은 Java 프로젝트에서 상대 경로를 사용할 때 \"지정된 경로를 찾을 수 없습니다\" 오류를 방지하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!