항아리 파일, 예를 들어 archive1.jar은 /home/ext/libs에 있습니다. 이 클래스에는 두 개의 클래스가 있으며 jar 계층의 루트에 텍스트 파일 (data.txt)이 있습니다. 이 항아리 클래스 중 하나 (예 : Data.java)는 파일을 읽어 일부 내부 데이터 구조를 시작합니다.항아리 안에 포함 된 파일 읽기
이제 archive1.jar 다른 프로그램의 라이브러리로 포함되어, 완전히 다른 디렉토리에 실행을 구문 분석 라고 /홈 /의 progs (archive1.jar이 실행의 클래스 경로에 지정된 프로그램의 명령).
내가 직면하고 문제는이 data.txt로 대신 에 archive1.jar 내부가되는 /홈 /의 progs에있는 가정하기 때문에 지금 Data.java가 더 이상 data.txt로의 경로를 이해할 수 없다는 것입니다/home/ext/libs.
내 문제는 내가이 data.txt로가 archive1.jar 내부에 있음을 이해하기 위해서는 Data.java 내부해야 어떤 변화? 즉, Data.java가 호출 프로그램이 어디에 있든 관계없이 archive1.jar 내의 data.txt를 읽을 수있게 만드는 방법입니다.
주 : 파일로 스레드 자바 리소스에는 것은 조금 달랐다, 또한 단지 내부의 파일을 읽는 방법에 대한 응답이 없었다. 하나는 그것이 불가능할 수도있다.
몇 가지 코드를 볼 수 있습니까? –
"Java 리소스를 파일"로 보았지만 적절한 대답을 찾지 못했습니다. 여기에 코드가 있습니다. Data.java 안에는 BufferedReader가 있습니다. br = new BufferedReader (새 FileReader ("data.txt")); 이 Data.java는/home/ext/libs에있는 archive1.jar 안에 있습니다. – Simo
Q (그리고 그것의 중복 된 것들)가 정확히 무엇을해야하는지 알려주면 적절한 답을 찾을 수 없습니까? 넌 그걸하지 않았어? –