|
/**/
/// <summary>
/// FileZipLib 压缩,解压缩的类
/// </summary>
public class FileZipLib
... {
public FileZipLib() ...{}
/**//// <summary>
/// 创建一个压缩文件
/// </summary>
/// <param name="zipFilename">压缩后的文件名</param>
/// <param name="sourceDirectory">待压缩文件的所在目录</param>
public static void PackFiles(string zipFilename,string sourceDirectory)
...{
FastZip fz = new FastZip() ;
fz.CreateEmptyDirectories = true ;
fz.CreateZip(zipFilename,sourceDirectory,true,"") ;
fz = null ;
}
/**//// <summary>
/// 解压缩文件
/// </summary>
/// <param name="zipFile">待解压缩的文件</param>
/// <param name="directory">解压缩后文件存放的目录</param>
public static bool UnpackFiles(string zipFile,string directory)
...{
if( !Directory.Exists(directory) )
Directory.CreateDirectory(directory) ;
ZipInputStream zis = new ZipInputStream( File.OpenRead(zipFile) ) ;
ZipEntry theEntry = null ;
while( (theEntry = zis.GetNextEntry()) != null )
...{
string directoryName = Path.GetDirectoryName(theEntry.Name) ;
string fileName = Path.GetFileName(theEntry.Name) ;
if( directoryName != string.Empty )
Directory.CreateDirectory(directory + directoryName) ;
if( fileName != string.Empty )
...{
FileStream streamWriter = File.Create( Path.Combine( directory,theEntry.Name) ) ;
int size = 2048 ;
byte[] data = new byte[size] ;
while ( true )
...{
size = zis.Read(data,0,data.Length) ;
if( size > 0 )
streamWriter.Write( data,0,size ) ;
else
break ;
}
streamWriter.Close() ;
}
}
zis.Close() ;
return true ;
}
}
// 最后别忘了using ICSharpCode.SharpZipLib.Zip ;
/// FileZipLib 压缩,解压缩的类
/// </summary>
public class FileZipLib
... {
public FileZipLib() ...{}
/**//// <summary>
/// 创建一个压缩文件
/// </summary>
/// <param name="zipFilename">压缩后的文件名</param>
/// <param name="sourceDirectory">待压缩文件的所在目录</param>
public static void PackFiles(string zipFilename,string sourceDirectory)
...{
FastZip fz = new FastZip() ;
fz.CreateEmptyDirectories = true ;
fz.CreateZip(zipFilename,sourceDirectory,true,"") ;
fz = null ;
}
/**//// <summary>
/// 解压缩文件
/// </summary>
/// <param name="zipFile">待解压缩的文件</param>
/// <param name="directory">解压缩后文件存放的目录</param>
public static bool UnpackFiles(string zipFile,string directory)
...{
if( !Directory.Exists(directory) )
Directory.CreateDirectory(directory) ;
ZipInputStream zis = new ZipInputStream( File.OpenRead(zipFile) ) ;
ZipEntry theEntry = null ;
while( (theEntry = zis.GetNextEntry()) != null )
...{
string directoryName = Path.GetDirectoryName(theEntry.Name) ;
string fileName = Path.GetFileName(theEntry.Name) ;
if( directoryName != string.Empty )
Directory.CreateDirectory(directory + directoryName) ;
if( fileName != string.Empty )
...{
FileStream streamWriter = File.Create( Path.Combine( directory,theEntry.Name) ) ;
int size = 2048 ;
byte[] data = new byte[size] ;
while ( true )
...{
size = zis.Read(data,0,data.Length) ;
if( size > 0 )
streamWriter.Write( data,0,size ) ;
else
break ;
}
streamWriter.Close() ;
}
}
zis.Close() ;
return true ;
}
}
// 最后别忘了using ICSharpCode.SharpZipLib.Zip ;