手机
当前位置:查字典教程网 >编程开发 >C#教程 >使用Deflate算法对文件进行压缩与解压缩的方法详解
使用Deflate算法对文件进行压缩与解压缩的方法详解
摘要:如下所示:复制代码代码如下:staticvoidMain(){stringpath=@"D:PractiseIOCompress";stri...

如下所示:

复制代码 代码如下:

static void Main()

{

string path = @"D:PractiseIOCompress";

string deCompressPath = @"D:PractiseIODeCompress";

DirectoryInfo dir = new DirectoryInfo(path);

foreach (FileInfo fi in dir.GetFiles())

{

Compress(fi);

}

foreach (FileInfo fi in dir.GetFiles("*.cmp"))

{

DeCompress(fi, deCompressPath);

}

}

public static void Compress(FileInfo fi)

{

using (FileStream fs = fi.OpenRead())

{

if (fi.Attributes != FileAttributes.Hidden & fi.Extension != ".cmp")

{

using (FileStream compressfile = new FileStream(fi.FullName + ".cmp", FileMode.Create, FileAccess.ReadWrite))

{

using (DeflateStream ds = new DeflateStream(compressfile, CompressionMode.Compress))

{

fs.CopyTo(ds);

Console.WriteLine("This File {0} has been Compressed to {1}",fi.Name,compressfile.Name);

}

}

}

}

}

public static void DeCompress(FileInfo fi, string desination)

{

using (FileStream fs = fi.OpenRead())

{

string deCompressFile = fi.Name.Remove(fi.Name.Length - fi.Extension.Length);

using (FileStream deCompressFS = new FileStream(Path.Combine(desination, deCompressFile), FileMode.Create, FileAccess.ReadWrite))

{

using (DeflateStream ds = new DeflateStream(fs, CompressionMode.Decompress))

{

ds.CopyTo(deCompressFS);

Console.WriteLine("This file {0} has been Decompressd", fi.Name);

}

}

}

}

【使用Deflate算法对文件进行压缩与解压缩的方法详解】相关文章:

使用DateTime的ParseExact方法实现特殊日期时间的方法详解

C#调用Matlab生成的dll方法的详细说明

C#文件后缀名的详细介绍

c#实现隐藏与显示任务栏的方法详解

c#生成缩略图的实现方法

使用Http Head方法获取文件长度的实现方法详解

使用SmtpClient发送邮件的方法

使用@符号让C#中的保留字做变量名的方法详解

探讨:如何使用委托,匿名方法对集合进行万能排序

对指定的网页进行截图的效果 C#版

精品推荐
分类导航