在 Windows 服务器2008 R2 上运行的 C# 我的应用程序中, 我需要能够提取任何在 Windows 或 MAC OSX 上创建的 ZIP 文件。 目前我使用 < a href=" http://dotnetzip.codeplex.com/" rel= "no follown noreferrerr" > DotNetZip 库 。
但此库无法提取在文件名中带有特殊字元的 MACOSX ZIP 档案。 我尝试在编码中指定不同的编码, 包括 < strong> > macintosh strong > 。 GetEncoding( 字符串) 方法 。
Windows 内置的拉链工具也干扰了特殊人物。 WinRAR 3.x 也有。 但是 WinRAR 4.x 似乎是唯一能正确工作的工具 。
是否可以从任何C#ZIP图书馆提取这样的ZIP档案?
更新: 这是在 Mac OSX 中以默认 Zip 函数创建的 zip 归档 。 第一个屏幕拍摄显示 Windows Zip 函数如何无法解码文件名。 第二个屏幕拍摄显示 WinRAR 4. 11 打开的归档 :
下载 < a href=>"https://www.droppox.com/s/4dz23xp3wbt3e4y/Arkiv.zip" rel=“不跟随无悔者”>Sample ZIP档案 来自Mac OSX的档案