SharpZipLib解压缩时中文名乱码[解决]
时间:2010-11-04 来源:lock
1)在源代码中找到 ZipInputSteam.cs文件,打开它然后定位到 GetNextEntry()这个函数内。
2)在GetNextEntry里面有一句代码是得到文件名的代码。
string name = ZipConstants.ConvertToStringExt(flags, buffer);
我们现在要改造一下这一句代码,其实就是变一下CodePage属性。。。。代码参考如下:
int externallyDefinedCodepage = ZipConstants.DefaultCodePage;
ZipConstants.DefaultCodePage =System.Text.Encoding.Default.CodePage; //出现乱码就是因为CodePage不对造成的。
string name = ZipConstants.ConvertToStringExt(flags, buffer);
ZipConstants.DefaultCodePage = externallyDefinedCodepage;
相关阅读 更多 +