JAVA Разделить огромный файл на несколько частей ZIP.Как? - PullRequest
1 голос
/ 22 декабря 2010

В моем приложении я должен отправлять отчеты XLS по электронной почте, но если размер файла превышает 10 МБ, я должен разбить этот файл на несколько частей ZIP-файлов и отправить их как отдельные электронные письма с вложениями (одно письмо - одна часть ZIP)).Если кто-нибудь знает библиотеку, которая поможет мне это сделать?Есть ли простой способ в Java?

1 Ответ

2 голосов
/ 22 декабря 2010

Попробуйте Apache Commons Compress и Apache Commons IO .

Вы можете создать zip-файл следующим образом (из примера документации):

ZipArchiveEntry entry = new ZipArchiveEntry(name);
entry.setSize(size);
zipOutput.putNextEntry(entry);
zipOutput.write(contentOfEntry);
zipOutput.closeArchiveEntry();

Вы можете связать это с FileUtils.readFileToByteArray (File file); и затем перебрать массив байтов, записывая ваши zip-файлы.

...