zoukankan      html  css  js  c++  java
  • C#实现文件的压缩和解压缩

    在C#中实现文件的压缩和解压缩,需要使用第三方的组建完成。常用的是:SharpZipLib组建。

    下载地址:http://www.icsharpcode.net/OpenSource/SharpZipLib/Download.aspx

    这里是我下载好的,直接使用:/Files/sunyaling/ICSharpCode.SharpZipLib.rar

    1、压缩和解压缩有两种典型的算法,一种是BZIP2算法,另一种是GZIP算法。BZIP2能够获得较高的压缩比,但是压缩和解压缩比较耗时,GZIP效率比较高,但是压缩比较低。

    2、BZIP2压缩算法的相关类,位于命名空间:ICSharpCode.SharpZipLib.BZip2中,算法要求指定输入流和输出流,并指定压缩方法使用的块大小,一般为2048.

    3、GZIP压缩算法的相关类,位于命名空间:ICSharpCode.SharpZipLib.GZip中,首先创建GZipOutputStream类实例,作为压缩文件的输出流,使用GZipOutputStream类实例的Write方法,将从源文件读取的数据写入输入流。同时完成压缩运算。

    4、使用实例:

    Code
    我只使用了GZIP的压缩,代码如下:
    Code

    GZIP最终压缩为gz格式的压缩文件,而不是zip格式的压缩文件,一开始不明白乱用一气,但方法是对的。

    下面介绍如假包换的zip压缩文件的方法,其实都大同小异:

    Code

    详细学习如何压缩文件访问下面2个网址,教你如何压缩多文件,我上面的压缩只针对单个文件

    http://www.cnblogs.com/zhoubin689/archive/2008/01/03/1025131.html

    http://blog.csdn.net/chinull/archive/2009/03/03/3953681.aspx

  • 相关阅读:
    Daily Scrum NO.4
    Daily Scrum NO.3
    Daily Scrum NO.2
    Daily Scrum NO.1
    Beta任务项录入
    M1事后分析报告
    wenbao与概率
    wenbao与组合数
    wenbao与高斯消元
    wenbao与链表
  • 原文地址:https://www.cnblogs.com/sunyaling/p/1434602.html
Copyright © 2011-2022 走看看