使用SharpZipLib壓縮與解壓檔案

2022-07-17 11:57:12 字數 2568 閱讀 2557

using

icsharpcode.sharpziplib.zip;

using

system;

using

system.collections.generic;

using

system.io;

namespace

zhong.core

filestream filestreamin = new

filestream(srcfile, filemode.open, fileaccess.read);

filestream filestreamout = new

filestream(destfile, filemode.create, fileaccess.write);

zipoutputstream zipoutstream = new

zipoutputstream(filestreamout);

//設定壓縮等級,預設為6

byte buffer = new

byte[4096

]; zipentry entry = new

zipentry(path.getfilename(srcfile));

zipoutstream.putnextentry(entry);

intsize;

do while (size > 0

); zipoutstream.dispose();

filestreamout.dispose();

filestreamin.dispose();}}

//////

壓縮多個檔案

/// ///

多個檔案路徑

///壓縮檔案的路徑

public

static

void zipfiles(string srcfiles, string

destfile)

using (zipfile zip =zipfile.create(destfile))

zip.commitupdate();

}//(new fastzip()).createzip(@"e:\1.zip", @"e:\1\", true, "");

}

//////

壓縮目錄

/// ///

目錄路徑

///壓縮檔案路徑

public

static

void zipdir(string dir, string

destfile)

string files = directory.getfiles(dir, "

*.*"

, searchoption.alldirectories);

zipfiles(files, destfile);

}//////

列表壓縮檔案裡的所有檔案

/// ///

壓縮檔案路徑

///public

static list getfilelist(string

zippath)

using (zipfile zip = new

zipfile(zippath))}}

return

files;

}//////

刪除zip檔案中的某個檔案

/// ///

壓縮檔案路徑

///要刪除的某個檔案

public

static

void deletefilefromzip(string zippath, string

files)

using (zipfile zip = new

zipfile(zippath))

zip.commitupdate();}}

//////

解壓檔案

/// ///

要解壓的檔案

///解壓後放置的目錄

public

static

void unzipfile(string zippath, string

outputdir)

//////

解壓檔案

/// ///

壓縮檔案路徑

///解壓後資料夾的路徑

public

static

void decompress(string srcfile, string

destdir)

zipentry entry;

while ((entry = zipinstream.getnextentry()) != null

)

while (size > 0

); filestreamout.dispose();

}zipinstream.dispose();

filestreamin.dispose();}}

}}

SharpZipLib 的使用 壓縮,解壓

sharpziplib 是乙個免費的zip操作類庫,可以利用它對 zip 等多種格式進行壓縮與解壓。前的版本為0.86。1 建立zip 檔案,並新增檔案 using zipfile zip zipfile.create e test.zip 2 將資料夾壓縮為檔案 new fastzip creat...

SharpZipLib壓縮解壓

using system using system.collections.generic using system.linq using system.text using system.io using icsharpcode.sharpziplib.zip namespace test zip...

C 使用SharpZipLib壓縮解壓檔案

region 加壓解壓方法 被壓縮的資料夾夾路徑 生成壓縮檔案的路徑,為空則預設與被壓縮資料夾同一級目錄,名稱為 資料夾名 zip 出錯資訊 是否壓縮成功 public bool zipfile string dirpath,string zipfilepath,out string err if ...