Java で ZIP アーカイブにファイルを効率的に追加するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-26 22:41:14
オリジナル
476 人が閲覧しました

How Can I Efficiently Append Files to ZIP Archives in Java?

Java で ZIP ファイルにファイルを追加する

War ファイルを変更する効率的な方法

解凍war ファイルの内容の変更、新しいファイルの追加、再圧縮により、開発中に不要な待ち時間が発生します。ファイルを ZIP アーカイブに直接追加すると、効率が向上します。

Java 7 の Zip ファイル システム

Java 7 では、Zip ファイル システムを通じて強力な機能が導入されています。これにより、再圧縮せずに ZIP アーカイブ内のファイル (JAR ファイルや WAR ファイルを含む) をシームレスに追加および変更できます。

コード例

次の Java コードは、ファイルを追加する方法を示しています。 Zip ファイル システムを使用して 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");
    }
}
ログイン後にコピー

このコードは、という名前の新しいファイルを作成します。 「test.zip」アーカイブ内の「new.txt」。

TruZip 代替

Zip ファイル システムは効果的なソリューションですが、TruZip のような代替ライブラリを検討する価値があります。 。 TrueZip は、ZIP ファイル操作のための追加機能と最適化を提供します。 Zip File System と TrueZip はどちらも、Java の ZIP アーカイブにファイルを追加するための効率的な方法を提供します。

以上がJava で ZIP アーカイブにファイルを効率的に追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート