Иногда нужно собрать несколько файлов в один архив. Java умеет делать ZIP без сторонних библиотек только стандартный пакет
java.util.zip. Достаточно перечислить файлы, открыть поток и записать их в архив по очереди.Готовим список файлов, которые нужно упаковать:
var files = java.util.List.of(
"notes.txt",
"image.png",
"data.json"
);
Указываем имя будущего ZIP-архива и путь к нему:
var zipPath = java.nio.file.Path.of("archive.zip");Открываем поток для записи ZIP-архива:
var zip = new java.util.zip.ZipOutputStream(
java.nio.file.Files.newOutputStream(zipPath)
);
Добавляем каждый файл в архив как отдельную запись:
for (var name : files) {
var path = java.nio.file.Path.of(name);
zip.putNextEntry(new java.util.zip.ZipEntry(path.getFileName().toString()));
java.nio.file.Files.copy(path, zip);
zip.closeEntry();
}Закрываем архив и сообщаем пользователю о результате:
zip.close();
System.out.println("Готово! Файлы упакованы в " + zipPath);
🔥 В итоге получаем
archive.zip, в котором лежат все указанные файлы.👉 Java Ready | #практика