Search code examples
c#.netdotnetzip

DotNetZip trouble with russian encoding


i use DotNetZip in my project.

using (var zip = new ZipFile()) 
{ 
   zip.ProvisionalAlternateEncoding = System.Text.Encoding.GetEncoding(866); 
   zip.AddFile(filename, "directory\\in\\archive"); 
   zip.Save("archive.zip"); 
} 

all ok but when i use method AddDirectoryByName i have a bad directory names.


Solution

  • Universal way for all is :

    zip.AlternateEncoding = Encoding.UTF8;
    zip.ProvisionalAlternateEncoding = Encoding.GetEncoding(Console.OutputEncoding.CodePage);
    zip.AlternateEncodingUsage = ZipOption.AsNecessary;