Anhängen an Zip-Dateien in Java: TrueZip und Java 7
Im Zusammenhang mit dem Extrahieren, Ändern und Neupacken von WAR-Dateien kommt es häufig vor Erwägen Sie eine Effizienzsteigerung durch das direkte Anhängen von Dateien an ein vorhandenes WAR-Archiv. Obwohl in der Java-Dokumentation explizite Methoden für diese Aufgabe fehlen, stehen Lösungen zur Verfügung.
TrueZip-Bibliothek
Eine Möglichkeit besteht darin, die TrueZip-Bibliothek zu verwenden, wie in Ihrer Aktualisierung vorgeschlagen Anfrage. TrueZip bietet spezielle Funktionen zum Bearbeiten und Anhängen an Zip-Archive. Mit TrueZip kann man einer Ziel-Zip-Datei gezielt Dateien hinzufügen, aktualisieren und löschen.
Das Zip-Dateisystem von Java 7
Darüber hinaus wurde mit Java 7 die Zip-Datei eingeführt System, das Änderungen an Zip-Archiven ohne Neupacken ermöglicht. Mit dem Zip-Dateisystem können Sie mit Standard-Java-E/A-Vorgängen direkt in ein Zip-Archiv schreiben oder Dateien darin ändern. Zum Beispiel:
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"); } }
Durch die Verwendung des Zip-Dateisystems können Sie mit einem Zip-Archiv interagieren, als wäre es ein normales Dateisystem, was effiziente Dateiergänzungen und -änderungen ermöglicht.
Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von TrueZip oder dem Zip-Dateisystem von Java 7 Dateien an vorhandene Zip-Archive in Java anhängen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!