如何用CZip/CUnzip类压缩/解压缩文件

2016-01-29 12:15 18 1 收藏

如何用CZip/CUnzip类压缩/解压缩文件,如何用CZip/CUnzip类压缩/解压缩文件

【 tulaoshi.com - C语言心得技巧 】

如何用CZip/CUnzip类压缩/解压缩文件
作者:hangwire

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com) Zip/Unzip dll源代码下载

范例程序下载


本文介绍如何用CZip/CUnzip类压缩/解压缩文件,这个类使用gzip GNU源代码(gzip-1.2.4a)。这是个免费软件,在GUN通用公共许可证(General Public License)条款下可以分发及修改此软件,关于这个通用公共许可证的详细条款请参考:
http://www.vckbase.com/vckbase/uniondocs/gungpl.htm

目标动态库输出两个类:
CZip(用于压缩文件)
CUnzip (用于解压缩文件)

首先用文件名建立CZip 或 CUnzip 对象。然后,压缩和解压缩都必须调用对象的 SwapSize() 方法,参数是目标文件名。如果调用出错,SwapSize()可以丢出CZipException异常。与异常相关的信息可以用GetStringt方法来获得,以下几种情况都会产生异常:

--源文件不存在或无法以读方式打开文件
--无法创建目标文件。例如,这个文件已经存在
--gzip代码返回一个错误,在这种情况下,与异常相关的信息包含由gzip源代码通过stderr返回的信息

CZip 或 CUnzip的使用方法如下:

在工程中包含czip.h文件
用zipdll.lib将工程链接到zipdll.dll
将zipdll.dll拷到可执行文件所在的目录

注意:也可以动态链接到zipdll.dll(没有测试过)。下面是使用CZip/CUnzip类的例子代码段:

  try
  {
    CZip myFileToZip ("file_to_zip_name");
    myFileToZip.SwapSize ("file_zipped_name"); 
  } 
  catch (CZipException e) 
  {
    cout << "problem while zipping : " << e.GetString() << endl;
    delete pExcep; 
  } 
   

注意: 如果想用WinZip来解压缩,则不能用".zip"作为文件扩展名。否则WinZip无法打开这个文件。 用WinZip压缩的文档(只能包含一个文件)可以用CUnzip对象解开。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

来源:https://www.tulaoshi.com/n/20160129/1485236.html

延伸阅读
标签: ASP rar
有没有想过在线解压缩压缩文件呢?呵呵,有时上传一个压缩包以后,利用Asp程序解压缩的确很方便,尤其是经常更新网站的站长们,由于文本文件压缩比率大,所以采用压缩以后上传再解压缩,这样比直接上传节省了大量的宝贵时间。准备好了吗?那就跟上吧。 要想实现这种功能,首先要得到Rar程序的解压缩核心文件支持(可以下载WinRar软件,再把其...
标签: 电脑入门
方法一、首先我们打开WINRAR软件,然后在软件界面中找到我们需要压缩的文件,接着点击确定,将会弹出压缩的窗口,如图所示: 方法二、找到需要压缩的文件,然后点击鼠标右键,在弹出菜单中,选择压缩到文件,如图所示: 最后,我们得到压缩文件,如图所示:
标签: 软件教程
快压目前在国内的用户比较广泛,快压以超高的压缩技术为宣传,在小编看来还是一款不错的国产压缩软件,快压如何压缩文件呢?下面介绍一下快压的基本使用方法。
标签: Web开发
我们经常会遇到批量上传的问题,也会遇到将某个目录下所有文件都上传到服务器上的问题。那么,如何解决此类问题呢?以前的技术一般采用ActiveX等方式,这里笔者采用SharpZlib来实现,听说VS2005已有压缩和解压缩的解决方案,笔者还没有时间用VS2005,所以就只好使用VS2003 + SharpZlib来解决问题了。 1、首先从这里下载0.84版本的Shar...
标签: 压缩软件
  解压缩RAR格式文件的最经典做法是:双击压缩文件,再单击调出WinRAR程序的“解压到”按钮,然后“确定”就可以解压至当前一个同名文件夹中了。小的压缩文件倒也罢了,而且看着褐色的进度条飞快地前进也怪舒服的,但如果这个待解压的RAR文件比较大的话,我们就只能等待了。虽然可以选择“后台”的运行方式,但终归它在工作。 打...

经验教程

584

收藏

99
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部