2011-11-30 4 views
4

J'ai besoin d'archiver plusieurs fichiers dans un fichier (comme un fichier tar) en utilisant C++ sur Linux et Windows. Il ne doit pas nécessairement être un fichier tar, tout format de fichier compressé/décompressé qui peut être utilisé sur les deux OS fera l'affaire. Des idées où regarder?Archivage de fichiers multiplateforme

Répondre

2

libarchive est une bibliothèque pour Linux et Windows. Il peut être lié statiquement dans Windows, et certaines distributions Linux ont déjà installé les bibliothèques libarchive.

2

Si la licence LGPL est OK, jetez un oeil à http://sourceforge.net/projects/sevenzip/ Je ne pense pas que la partie compression du programme soit très proche de Windows. Il suffit donc d'obtenir la partie dont vous avez besoin, elle prend en charge beaucoup de formats: 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

comment puis-je utiliser ceci avec du code in? – oggmonster

1

Windows XP a intégré dans le traitement de fichier zip

sur * nix vous pouvez utiliser zip et unzip

+0

Je dois faire ce genre de choses par programme à partir du code – oggmonster

2

Vous pouvez jeter un coup d'œil à zlib. Regardez la section Liens externes connexes de cette page pour les liens vers les ressources et les DLL pour compiler ceci sur Windows.

3

Voir la bibliothèque MiniZip, une plateforme multiplateforme C++ pure Windows/Linux.

+0

semble prometteur, merci! – oggmonster

+0

Je cherche de la documentation ou un exemple pour créer une archive, mais je ne trouve rien. Quelqu'un peut-il poster un lien? – JellicleCat