>  기사  >  Java  >  TrueZip 또는 Java 7의 Zip 파일 시스템을 사용하여 Java의 기존 Zip 아카이브에 파일을 추가하려면 어떻게 해야 합니까?

TrueZip 또는 Java 7의 Zip 파일 시스템을 사용하여 Java의 기존 Zip 아카이브에 파일을 추가하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-25 08:33:14959검색

How Can I Append Files to Existing Zip Archives in Java Using TrueZip or Java 7's Zip File System?

Java에서 Zip 파일에 추가: TrueZip 및 Java 7

WAR 파일을 추출, 수정, 재패키징하는 과정에서 이는 일반적입니다. 기존 WAR 아카이브에 파일을 직접 추가하여 효율성을 높이는 것을 고려합니다. Java 문서에는 이 작업에 대한 명시적인 방법이 없지만 사용 가능한 솔루션이 있습니다.

TrueZip 라이브러리

한 가지 옵션은 업데이트된 설명서에 제안된 대로 TrueZip 라이브러리를 활용하는 것입니다. 문의. TrueZip은 Zip 아카이브를 조작하고 추가하기 위한 특정 기능을 제공합니다. TrueZip을 사용하면 대상 Zip 파일에서 파일을 선택적으로 추가, 업데이트 및 삭제할 수 있습니다.

Java 7의 Zip 파일 시스템

또한 Java 7에서는 Zip 파일이 도입되었습니다. 다시 포장하지 않고도 Zip 아카이브를 수정할 수 있는 시스템입니다. Zip 파일 시스템을 사용하면 표준 Java I/O 작업을 사용하여 Zip 아카이브 내의 파일에 직접 쓰거나 파일을 수정할 수 있습니다. 예를 들면 다음과 같습니다.

Map<String, String> env = new HashMap<>();
env.put("create", "true");
Path path = Paths.get("test.zip");
URI uri = URI.create("jar:" + path.toUri());
try (FileSystem fs = FileSystems.newFileSystem(uri, env)) {
    Path nf = fs.getPath("new.txt");
    try (Writer writer = Files.newBufferedWriter(nf, StandardCharsets.UTF_8, StandardOpenOption.CREATE)) {
        writer.write("hello");
    }
}

Zip 파일 시스템을 사용하면 마치 일반 파일 시스템인 것처럼 Zip 아카이브와 상호 작용할 수 있어 효율적인 파일 추가 및 수정이 가능합니다.

위 내용은 TrueZip 또는 Java 7의 Zip 파일 시스템을 사용하여 Java의 기존 Zip 아카이브에 파일을 추가하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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