Перетворення блискавки на 7Z

Якщо ви хочете перетворити архів ZIP в 7Z, прочитайте цю статтю.

Aspose.zip тепер дозволяє складати архів 7Z з алгоритмами стиснення LZMA, LZMA2, PPMD ​​та BZIP2.

конвертація

Aspose.zip API надає клас семиципархів для роботи з архівами 7Z.  Ми можемо витягнути запис у пам’ять, не зберігаючи його в проміжному сховищі та передати його в архів 7Z відразу.

Переконайтеся, що у вас є достатня віртуальна пам’ять, щоб зберегти вміст усіх записів.

Перенесіть запис

Наступний приклад коду демонструє, як витягувати записи з архіву ZIP і негайно поставити їх до архіву 7Z. Записи 7Z будуть стиснутих методом LZMA2 незалежно від того, який алгоритм вони мали в архіві джерела. Записи, які є каталогами, пропускаються, але їх файли додаються до відносних шляхів.

 1спробуйте (архів джерело = новий архів ("source.zip")) {
 2    Спробуйте (Sevenziparchive Archive = новий семизапархів (нові SewzipentrySettings (New Sevenziplzma2Compressionsettings ())) {
 3        для (archiveentry запис: source.getentries ()) {
 4            if (! entry.isdirectory ()) {
 5                спробуйте (bytearrayoutputstream = новий bytearrayoutputstream ()) {
 6                    entry.extract (out);
 7                    спробуйте (bytearrayinputstream in = новий bytearrayinputstream (out.tobytearray ()) {
 8                        Archive.createEntry (entry.getName (), IN);
 9                    }
10                }
11            }
12        }
13        Archive.Save ("Результат.7Z");
14    }
15} улов (IOException ex) {
16}
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.