SharpZipLib压缩中文文件,解压后文件名乱码

在英文版的操作系统中,调用SharpZipLib的FastZip压缩一个中文名的文件,生成的.zip文件不能解压缩,一打开就提示错误,并且发现压缩包中中文文件名变成了"?????????"或"_______"。

操作系统:windows server 2003 英文版 安装了东亚字体,Region and Language Options是系统默认设置

程序集:ICSharpCode.SharpZipLib.dll  

程序集版本:0.85

解决方法:

在SourceForge下载SharpZipLib 0.85版本的源代码,修改源代码后再重新编译

网址:http://sourceforge.net/project/showfiles.php?group_id=17610&package_id=83139

下载 SharpZipLib_0855_SourceSamples.zip   

解压缩,然后在src文件夹中双击ICSharpCode.SharpZLib.csproj打开项目。在ZipEntryFactory.cs文件的223行(MakeFileEntry函数的第二行),修改

result.IsUnicodeText = true; 

其他的地方都不用该!

然后重新生产ICSharpCode.SharpZLib项目,在你的项目中重新引用新的ICSharpCode.SharpZLib.dll就OK了


转载于:https://www.cnblogs.com/leodrain/archive/2009/05/04/fixed-sharpziplib-fastzip-not-surport-chinese-charater-file.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值