2010-11-07 18 views

Répondre

7

En général, le format gzip ne prend pas en charge plusieurs fichiers. Traditionnellement, on regroupe plusieurs fichiers en utilisant tar avant de compresser le résultat; vous voulez probablement faire quelque chose de similaire.

3

Le format de fichier gzip est un format d'archive, il contient un en-tête et un répertoire qui répertorie tous les fichiers compressés dans l'archive. GZipStream compresse simplement les données écrites dans le flux. L'équivalent d'un fichier dans l'archive, il n'est pas capable de générer le format d'archive.

Une solution populaire est SharpZipLib, il y en a beaucoup d'autres.

0

Ancien sujet, mais peut aider les futurs lecteurs.

J'ai trouvé cette solution (here) qui propose de compresser/décompresser un répertoire en utilisant la classe native GZipStream.

L'exemple crée une liste de fichiers à l'aide de Directory.GetFiles, mais il est facile de modifier ce point et de l'adapter à vos besoins. Remarque: le fichier compressé n'est pas un fichier gzip qui peut être ouvert par un logiciel tiers, mais c'est une bonne solution pour la gestion interne de votre application (personnellement je l'utilise pour transférer mes fichiers de correctifs d'application sur le réseau).