In C# my application running on Windows Server 2008 R2 I need to be able to extract any ZIP file created on Windows or MAC OSX. I am currently using the DotNetZip library.
But this library has trouble extracting MACOSX ZIP archives with special nordic characters in the filenames. I have tried specifying different encodings including macintosh in the Encoding.GetEncoding(string) method.
The Windows built-in zip tool also messes up the special characters. WinRAR 3.x does as well. But WinRAR 4.x seems to be the only tool that does the job right.
Is it at all possible to extract such a ZIP archive right with any available C# ZIP libraries?
UPDATE: Here is an example of a zip archive created with the default Zip function in Mac OSX. The first screen shot shows how the Windows Zip function cannot decode the filenames. The second screen shot shows the archive opened with WinRAR 4.11:
Download sample ZIP archive from Mac OSX