C 使用SharpZipLib壓縮解壓檔案

2022-03-10 12:52:59 字數 1345 閱讀 8768

#region 加壓解壓方法

///

/// 被壓縮的資料夾夾路徑

/// 生成壓縮檔案的路徑,為空則預設與被壓縮資料夾同一級目錄,名稱為:資料夾名+.zip

/// 出錯資訊

/// 是否壓縮成功

public bool zipfile(string dirpath, string zipfilepath, out string err)

if (!directory.exists(dirpath))

//壓縮檔案名為空時使用資料夾名+.zip

if (zipfilepath == string.empty)

zipfilepath = dirpath + ".zip";

}try

while (sourcebytes > 0);}}

s.finish();

s.close();}}

catch (exception ex)

return true;

}/// /// 功能:解壓zip格式的檔案。

///

/// 壓縮檔案路徑

/// 解壓檔案存放路徑,為空時預設與壓縮檔案同一級目錄下,跟壓縮檔案同名的資料夾

/// 出錯資訊

/// 解壓是否成功

public bool unzipfile(string zipfilepath, string unzipdir, out string err)

if (!file.exists(zipfilepath))

//解壓資料夾為空時預設與壓縮檔案同一級目錄下,跟壓縮檔案同名的資料夾

if (unzipdir == string.empty)

unzipdir = zipfilepath.replace(path.getfilename(zipfilepath), path.getfilenamewithoutextension(zipfilepath));

if (!unzipdir.endswith("\\"))

unzipdir += "\\";

if (!directory.exists(unzipdir))

directory.createdirectory(unzipdir);

tryif (!directoryname.endswith("\\"))

directoryname += "\\";

if (filename != string.empty)

else}}

}}//while}}

catch (exception ex)

return true;

}//解壓結束

#endregion

C 使用SharpZipLib實現zip壓縮

使用國外開源加壓解壓庫icsharpcode.sharpziplib實現加壓,該庫的官方 為 使用體驗 可以照著例子實現簡單的加壓解壓,可以加壓乙個資料夾中的所有檔案,但沒有提供加壓子資料夾的說明。目前網上的一些 有的無法加壓空資料夾,有的加壓了用rar解不開,這是一點需要改進的。但如果只需要加壓資...

SharpZipLib使用示例

sharpziplib使用示例 zipinputstream gzipinputstream用於解壓縮deflate gzip格式流,zipoutputstream gzipoutputstream用於壓縮deflate gzip格式流。streamutil類包含了幾個stream處理輔助方法 co...

SharpZipLib使用示例

using zipfile zip zipfile.create e test.zip 2 將資料夾壓縮為檔案 new fastzip createzip e test.zip e test true,最後乙個引數是使用正規表示式表示的過濾檔案規則。createzip方法有3個過載版本,其中有目錄過...