Межплатформенное архивирование файлов - PullRequest
4 голосов
/ 30 ноября 2011

Мне нужно архивировать несколько файлов в один файл (как это делает tar-файл) программно с использованием C ++ как в Linux, так и в Windows.Это не обязательно должен быть tar-файл, подойдет любой сжатый / несжатый формат файла, который можно использовать в обеих ОС.Есть идеи где искать?

Ответы [ 5 ]

3 голосов
/ 30 ноября 2011

См. Библиотека MiniZip , чистый кросс-платформенный C ++ для Windows / Linux.

2 голосов
/ 21 февраля 2013

libarchive - это библиотека для Linux и Windows.Он может быть статически связан с Windows, а в некоторых дистрибутивах Linux уже установлены библиотеки libarchive

2 голосов
/ 30 ноября 2011

Вы можете взглянуть на zlib . В разделе «Связанные внешние ссылки» этой страницы приведены ссылки на ресурсы и библиотеки для компиляции в Windows.

2 голосов
/ 30 ноября 2011

Если с лицензией LGPL все в порядке, взгляните на http://sourceforge.net/projects/sevenzip/. Я не думаю, что часть программы сжатия очень тесно связана с окнами.Так что просто получите нужную часть, она поддерживает множество форматов: 7z, XZ, BZIP2, GZIP, TAR, ZIP, WIM, ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO,LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR, Z.

1 голос
/ 30 ноября 2011

Windows XP имеет встроенную обработку файлов zip

на * nix вы можете использовать zip и unzip

...