Zip байтовый массив с паролем - PullRequest
0 голосов
/ 18 июня 2019

У меня есть файл PDF в массиве byte [].Я хочу сжать его и зашифровать с помощью пароля.Я не хочу создавать временные файлы.Но библиотеки вроде zip4j, winzipaes не поддерживают это.Они принимают только объекты File.

EDIT: код для простого почтового индекса:

public static byte[] zipBytes(String filename, byte[] input) throws IOException {

ByteArrayOutputStream baos = new ByteArrayOutputStream();

ZipOutputStream zos = new ZipOutputStream(baos);

ZipEntry entry = new ZipEntry(filename);

entry.setSize(input.length);

zos.putNextEntry(entry);

zos.write(input);

zos.closeEntry();

zos.close();

return baos.toByteArray();}

Как добавить шифрование и пароль?

1 Ответ

0 голосов
/ 19 июня 2019

Я нашел несколько источников и приспособил их к моей проблеме. Загрузите его в https://github.com/r331/memzipenc

MemZipEnc.getEncryptZipByte (файл byte [], пароль java.lang.String, имя файла java.lang.String) этот статический метод шифрует и архивирует один файл в памяти без сохранения файлов на жестком диске

...