С Zip4j я пытаюсь добавить файл в существующий zip -файл, загруженный в памяти. У меня нет доступа к файловой системе. Мой zip -файл - это в основном байт [] , и я хотел бы не разкапливать его, чтобы добавить свой новый файл. Самым близким, что я получил, было, поместив мой ZIP-файл в BytearRayOutputStream , оберните его в ZipoutputStream и, наконец, добавив в него мой новый файл:
public byte[] addFileToArchive(byte[] originalContent, byte[] fileToAdd, String filePathInArchive) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
try (ZipOutputStream zipOutputStream = new ZipOutputStream(outputStream)) {
// Add original content
outputStream.write(originalContent);
// Add new file
ZipParameters parameters = new ZipParameters();
parameters.setFileNameInZip(filePathInArchive);
zipOutputStream.putNextEntry(parameters);
zipOutputStream.write(fileToAdd);
zipOutputStream.closeEntry();
}
return outputStream.toByteArray();
}
< /code>
К сожалению, он создает странный zip -файл, отображающий исходные файлы, когда я предварительно просмотр его с помощью Zip Explorer (например, Ark), но когда я разоблачил его, чтобы проверить его реальное содержание, присутствует только новый файл. < /p>
Я нашел несвежную проблему на официальном озабоченности, что и то же самое, что и то же самое, что -то, что -то, что происходит, что -либо, что -то, что происходит, что -либо, что -то вроде. Спасибо!
[b] edit [/b]: почему я просто не могу использовать файл
или Zipfile ? Это потому, что этот код может получать данные от файловой системы или API S3 или нескольких других поставщиков данных.
С Zip4j я пытаюсь добавить файл в существующий zip -файл, загруженный в памяти. У меня нет доступа к файловой системе. Мой zip -файл - это в основном байт [] , и я хотел бы не разкапливать его, чтобы добавить свой новый файл. Самым близким, что я получил, было, поместив мой ZIP-файл в BytearRayOutputStream , оберните его в ZipoutputStream и, наконец, добавив в него мой новый файл: [code] public byte[] addFileToArchive(byte[] originalContent, byte[] fileToAdd, String filePathInArchive) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); try (ZipOutputStream zipOutputStream = new ZipOutputStream(outputStream)) { // Add original content outputStream.write(originalContent);
// Add new file ZipParameters parameters = new ZipParameters(); parameters.setFileNameInZip(filePathInArchive);
return outputStream.toByteArray(); } < /code> К сожалению, он создает странный zip -файл, отображающий исходные файлы, когда я предварительно просмотр его с помощью Zip Explorer (например, Ark), но когда я разоблачил его, чтобы проверить его реальное содержание, присутствует только новый файл. < /p> Я нашел несвежную проблему на официальном озабоченности, что и то же самое, что и то же самое, что -то, что -то, что происходит, что -либо, что -то, что происходит, что -либо, что -то вроде. Спасибо! [b] edit [/b]: почему я просто не могу использовать файл [/code] или Zipfile ? Это потому, что этот код может получать данные от файловой системы или API S3 или нескольких других поставщиков данных.
С Zip4j я пытаюсь добавить файл в существующий zip -файл, загруженный в памяти. У меня нет доступа к файловой системе. Мой zip -файл - это в основном байт [] , и я хотел бы не разкапливать его, чтобы добавить свой новый файл. Самым близким, что я...
У меня есть метод для создания или добавления к существующему zip-файлу, который либо вызывает ZipFile.CreateFromDirectory(), когда zip-архив еще не существует, либо открывает zip-архив с помощью класса ZipFile, и добавляет в него файлы....
У меня есть метод для создания или добавления к существующему zip-файлу, который либо вызывает ZipFile.CreateFromDirectory(), когда zip-архив еще не существует, либо открывает zip-архив с помощью класса ZipFile, и добавляет в него файлы....
У меня есть метод для создания или добавления к существующему zip-файлу, который либо вызывает ZipFile.CreateFromDirectory(), когда zip-архив еще не существует, либо открывает zip-архив с помощью класса ZipFile, и добавляет в него файлы....
У меня есть разделенные zip-файлы test_10G.zip.001 и test_10G.zip.002. Я пытаюсь использовать функцию isSplitArchive() из zip4j. Но я получаю исключение, говорящее, что Заголовки Zip не найдены. Вероятно, это не zip-файл .
import...