如何用CZip CUnzip類壓縮 解壓縮檔案

2021-04-13 06:49:07 字數 854 閱讀 4540

本文介紹如何用czip/cunzip類壓縮/解壓縮檔案,這個類使用gzip gnu源**(gzip-1.2.4a)。這是個免費軟體,在gun通用公共許可證(general public license)條款下可以分發及修改此軟體,關於這個通用公共許可證的詳細條款請參考:

目標動態庫輸出兩個類:

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 

catch (czipexception e) 

注意: 如果想用winzip來解壓縮,則不能用".zip"作為副檔名。否則winzip無法開啟這個檔案。 用winzip壓縮的文件(只能包含乙個檔案)可以用cunzip物件解開。

如何用JSP處理Oracle中CLOB型別的字段

1.clob欄位的插入 clob 型別的資料直接 insert 可能會因為字元過長而出錯 所以要用物件形式插入.示例 首先 建立乙個含 clob 欄位的表 create table test id integer,content clob 然後插入空值 string strsql insert in...

SQLite中如何用api操作blob型別的字段

在實際的程式設計開發當中我們經常要處理一些大容量二進位制資料的儲存,如或者 等等。對於這些二進位制資料 blob欄位 我們不能像處理普通的文字那樣簡單的插入或者查詢,為此sqlite提供了一組函式來處理這種blob欄位型別。下面的 演示了如何使用這些api函式。首先我們要建立乙個資料庫 sqlite...

如何用C 寫乙個類

其實寫乙個類很簡單,但是要寫乙個符合各方面要求的類,卻不是一件容易的事情。下面總結一下需要考慮的一些問題,先把暫時想到的方面記下來,以後想到新的在增加吧。類的生死和初始化 1.copy ctor和copy assignment是不是需要private 單例常用 或者是不是要用private繼承來阻止...