用SharpZipLib给文件压缩时,加上的密码,但是在解压时出错,请高手指点

evaELLIS 2005-08-23 11:13:27
压缩时,加密码成功,用winrar可以解开,但是自己用程序解时只能解开一个文件,再到while循环时就出现文件头错误了,请高手指点,急

ZipInputStream s = new ZipInputStream(File.OpenRead(zipFileName));
if(strPassWord != "")
{
s.Password = strPassWord;
}
ZipEntry theEntry;
while ((theEntry = s.GetNextEntry()) != null)
{
...全文
316 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
iamzrsoft 2005-08-27
  • 打赏
  • 举报
回复
我用C1ZIP
iamzrsoft 2005-08-27
  • 打赏
  • 举报
回复
我用C1ZIP
timiil 2005-08-27
  • 打赏
  • 举报
回复
旧版本的SharpZipLib确实遇到过这样的错误,可以压缩多个文件,且压出来的东西用WinZip /WinRAR也可以成功解压,但如果用SharpZipLib解压就错。异常信息大体是"签名信息错误"之类吧。084版本的在其BBS中好像也没有明确说出已经解决了噢~~~
evaELLIS 2005-08-27
  • 打赏
  • 举报
回复
有没有高手了!班竹都哪去了,急等!!!!
evaELLIS 2005-08-26
  • 打赏
  • 举报
回复
有没有高手了!班竹都哪去了,急等!!!!
evaELLIS 2005-08-25
  • 打赏
  • 举报
回复
up
evaELLIS 2005-08-25
  • 打赏
  • 举报
回复
up
evaELLIS 2005-08-25
  • 打赏
  • 举报
回复
up
mathsword 2005-08-25
  • 打赏
  • 举报
回复
一直up什么啊,把程序法过来帮你看看。
upcstudent at 163.com
cuike519 2005-08-24
  • 打赏
  • 举报
回复
没有问题啊。下载的最新的sample里面的CreateZipFile里面添加下面的行,即可以实现带加密压缩目录:
s.SetLevel(6); // 0 - store only to 9 - means best compression
s.Password = "pwd";//这个我添加的
这样压缩的包用下面的方法可以正确解压。
在解密的时候我使用的是UnZipFile,修改如下:
ZipInputStream s = new ZipInputStream(File.OpenRead(args[0]));
s.Password = "pwd";//这是我添加的
ZipEntry theEntry;
其他代码就不帖了,下载一个084SharpZipLib_SourceSamples就可以看到。
我这样修改之后可以实现带加密的压缩,没有什么错啊。

请仔细检查你的代码和逻辑,解压时的包是否是加密后的压缩包?

gz...
evaELLIS 2005-08-24
  • 打赏
  • 举报
回复
有没有高手了,班竹都哪里的去了!!!!急等
evaELLIS 2005-08-24
  • 打赏
  • 举报
回复
有没有高手了!班竹都哪去了,急等!!!!
ekingxu 2005-08-24
  • 打赏
  • 举报
回复
UP
evaELLIS 2005-08-23
  • 打赏
  • 举报
回复
up
wwei69 2005-08-23
  • 打赏
  • 举报
回复
有没有高手了!班竹都哪去了,急等!!!!
evaELLIS 2005-08-23
  • 打赏
  • 举报
回复
up
evaELLIS 2005-08-23
  • 打赏
  • 举报
回复
up

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧