>Java >java지도 시간 >Java에서 JAR 파일 내의 파일에 어떻게 액세스하고 검색할 수 있습니까?

Java에서 JAR 파일 내의 파일에 어떻게 액세스하고 검색할 수 있습니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-25 19:33:20398검색

How Can I Access and Retrieve Files Inside a JAR File in Java?

JAR 파일 내 파일 탐색 및 검색

JAR 파일 작업 시 다양한 목적으로 내부 파일에 액세스해야 합니다. 이 질문은 특히 이미지를 로드하고 동적으로 액세스하기 위해 JAR 파일 내의 파일을 열거해야 할 때 발생합니다.

해결 방법에는 여러 가지 방법을 조합하여 활용하는 것이 포함됩니다. 먼저 기본 클래스가 있는 JAR 파일을 결정합니다. java.util.Zip을 사용하여 이 정보를 검색할 수 있습니다.

JAR 파일 이름을 알고 나면 CodeSource 객체를 생성하고 JAR 파일의 URL을 가져옵니다. 다음으로 ZipInputStream을 사용하여 JAR 파일의 콘텐츠에 액세스합니다. 스트림에서 지속적으로 ZipEntry 개체를 검색하고 각 항목의 이름을 검사합니다. 이름이 원하는 디렉토리 경로와 일치하면 해당 항목에 대해 필요한 작업을 수행할 수 있습니다.

다음은 JAR 파일 내의 이미지를 나열하는 예제 코드 조각입니다.

CodeSource src = MyClass.class.getProtectionDomain().getCodeSource();
if (src != null) {
  URL jar = src.getLocation();
  ZipInputStream zip = new ZipInputStream(jar.openStream());
  while (true) {
    ZipEntry entry = zip.getNextEntry();
    if (entry == null) break;
    if (entry.getName().startsWith("images/")) {
      // Process the image entry
    }
  }
}

또는 Java 7의 FileSystem 및 NIO의 파일 탐색 메커니즘을 사용하여 JAR 파일의 내용을 탐색할 수 있습니다. 이렇게 하면 JAR 파일 내의 파일을 검색하고 필터링하는 프로세스가 단순화됩니다.

위 내용은 Java에서 JAR 파일 내의 파일에 어떻게 액세스하고 검색할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.