Библиотеки сжатия для [закрытого] C++

Это столь же просто как ввод

vim /dir1/file1 /dir2/file1 /dir2/file2 ...

, Как только Вы находитесь в энергии, можно переключиться между тогда с ": n" для движения в следующий файл, ": предыдущий" для движения в предыдущий файл.

9
задан Sophie Alpert 14 October 2009 в 02:46
поделиться

6 ответов

Большинство известных мне библиотек сжатия написаны на C по двум причинам: во-первых, это общий возраст хороших алгоритмов сжатия; и, во-вторых, высокая переносимость (и стабильность) языка C на разных платформах.

Я предлагаю любое из следующего. Если вам нужны хорошие лицензии, выберите одну из двух лучших, в противном случае, если вы готовы использовать код GPL, выберите одну из двух последних.

7
ответ дан 4 December 2019 в 09:13
поделиться

Zlib хорош, но вы можете также проверить LZMA SDK (вы можете сжать до формата .7z в дополнение к zip)

2
ответ дан 4 December 2019 в 09:13
поделиться

Вы можете легко сделать это, используя Boost iostream zlib filter

11
ответ дан 4 December 2019 в 09:13
поделиться

Используйте libzip: http://www.nih.at/libzip/ Лицензия достаточно разрешительная и делает все, что вам нужно, из кода C или C ++.

1
ответ дан 4 December 2019 в 09:13
поделиться

zlib настоятельно рекомендуется. Он хорошо написан, и интерфейс довольно чистый. Я не понимаю, насколько оболочка C ++ может упростить API. Кроме того, на мой взгляд, zlib обеспечивает хороший баланс между скоростью (де) сжатия и размером файла. Bzip2 намного медленнее, а степень сжатия LZO и UCL хуже.

1
ответ дан 4 December 2019 в 09:13
поделиться

Я бы предложил использовать zlib. Он разработан для C, но отлично работает в C ++.

Использование собственных библиотек C ++ действительно помогает только тогда, когда библиотека достаточно большая и сложная, чтобы можно было извлечь выгоду из объектно-ориентированного дизайна. zlib относительно прост и не требует объектно-ориентированных функций.

1
ответ дан 4 December 2019 в 09:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: