解决使用ICsharpCode解压缩时候报错Size MisMatch的错误

项目用到了这个组件,然后在解压文件时候报Size MisMatch错,解决方法:到https://github.com/icsharpcode/SharpZipLib/releases选择对应的源码下载,导入项目后,我用VS2015导入需要修改一下ICSharpCode.SharpZLib.csproj文件,我的是:



  
    
    
    
    
    2.0
    {F880FC22-D7F9-44F4-BD42-9148468AF25F}
    publish\
    true
    Disk
    false
    Foreground
    7
    Days
    false
    false
    true
    0
    1.0.0.%2a
    false
    false
    true
  
  
    MinimumRecommendedRules.ruleset
    AnyCPU
    bin\Debug\
  
  
    Library
  
  
    
  
  
    ICSharpCode.SharpZLib
  
  
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
  
  
    
  
  
    
      False
      Microsoft .NET Framework 4 %28x86 和 x64%29
      true
    
    
      False
      .NET Framework 3.5 SP1
      false
    
    
      False
      Windows Installer 4.5
      true
    
  
  
    
  
  

然后找到:ZipInputStream.cs文件,将里面:

if ((flags & 8) == 0 && (inf.TotalIn != csize || inf.TotalOut != size)) {
							throw new ZipException("Size mismatch: " + csize + ";" + size + " <-> " + inf.TotalIn + ";" + inf.TotalOut);
						}

 

这三句注释掉就行了,我做好的文件在这里下载(版本SharpZipLib-0.85.0.0)。

你可能感兴趣的:(编程开发)