Décompression de fichier et encodage
Bonjour,
je cherche a faire une petite moulinette qui décompresse des archives dans un dossier spécifique, pour cela j'utilise une library open source (SharpZipLib) qui a l'air pas trop mal...
Cependant même si mon algorithme fonctionne sur des essais où j'ai placé des fichiers texte, cela ne fonctionne pas pour autant avec d'autres fichiers encodés (tels que des jpg, des wav, des mp3...). Après avoir comparé le contenu du fichier décompressé avec mon algo et celui du fichier original j'ai l'impression que cela semble être un problème d'encodage des caractère...
Comment faire pour que le fichier soit correctement encoder?
Cf-> code source
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| ZipInputStream zip = new ZipInputStream(File.OpenRead(@"D:\dev\Test\battlelan.zip"));
ZipEntry obj;
obj = zip.GetNextEntry();
// lit le fichier en cours
while (obj != null)
{
byte[] buffer = new byte[obj.Size];
StreamWriter writer = new StreamWriter(@"D:\dev\Test\" + obj.Name, false);
zip.Read(buffer, 0, buffer.Length);
// après vérif le byte[] est correct, c'est au moment de la conversion en string que ca pose problème
writer.Write(Encoding.ASCII.GetString(buffer, 0,buffer.Length));
writer.Close();
obj = zip.GetNextEntry();
}
MessageBox.Show("Archive décompressée"); |
Merci d'avance pour vos réponses