Добавление файла в существующий в файле Zip памяти с Zip4jJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Добавление файла в существующий в файле Zip памяти с Zip4j

Сообщение Anonymous »

С 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 или нескольких других поставщиков данных.

Подробнее здесь: https://stackoverflow.com/questions/795 ... with-zip4j
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»