overWrite)
{
    #region 实现
    
string myExtractLocation = extractLocation;
    
if (myExtractLocation == "")
    {
        myExtractLocation 
= Directory.GetCurrentDirectory();
    }
    
if (!myExtractLocation.EndsWith("\\"))
    {
        myExtractLocation 
= myExtractLocation + "\\";
    }
    ZipInputStream s 
= new ZipInputStream(File.OpenRead(zipFileName));
    s.Password 
= password;
    ZipEntry theEntry;

    
while ((theEntry = s.GetNextEntry()) != null)
    {
        
string directoryName = "";
        
string pathToZip = "";
        pathToZip 
= theEntry.Name;

        
if (pathToZip != "")
            directoryName 
= Path.GetDirectoryName(pathToZip) + "\\";
        
string fileName = Path.GetFileName(pathToZip);
        Directory.CreateDirectory(myExtractLocation 
+ directoryName);
        
if (fileName != "")
        {
            
if ((File.Exists(myExtractLocation + directoryName + fileName) && overWrite) ||
            (
!File.Exists(myExtractLocation + directoryName + fileName)))
            {
                FileStream streamWriter 
= File.Create(myExtractLocation + directoryName + fileName);
                
int size = 2048;
                
byte[] data = new byte[2048];
                
while (true)
                {
                    size 
= s.Read(data, 0, data.Length);
                    
if (size > 0)
                        streamWriter.Write(data, 
0, size);
                    
else
                        
break;
                }
                streamWriter.Close();
            }
        }
    }
    s.Close();
    
#endregion
    File.Delete(zipFileName);
}

相关文章:

  • 2021-12-05
  • 2021-12-10
  • 2021-12-21
  • 2021-07-14
  • 2021-08-20
  • 2022-12-23
  • 2022-02-03
猜你喜欢
  • 2021-07-02
  • 2021-09-02
  • 2022-12-23
  • 2021-12-16
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案