C 的幾種壓縮檔案方法

2022-02-17 06:29:43 字數 2481 閱讀 3823

1.將指定目錄下的檔案壓縮為.tar格式,並儲存到指定路徑(tar)

/// /// 將制定目錄下的檔案壓縮為tar檔案

///

/// 源目錄d:\\images

/// 目標目錄tar檔案f:\\tar\\aaa.tar

public static void compresstarfile(string in, string out)

if (archive != null)

}

注:以上是將指定目錄的檔案壓縮到指定目錄下,且支援多檔案。

2.將制定目錄下的檔案壓縮為.zip格式,並儲存到指定路徑(zip)

///

///壓縮成zip

/// ///

d:\ ///

d:\a.zip

private

static

void createzipfile(string filespath, string

zipfilepath)

'", filespath);

return

; }

try

while (sourcebytes > 0

); }

}s.finish();

s.close();}}

catch

(exception ex)

", ex);}}

//////

解壓zip

/// ///

d:\a.zip

public

static

void unzipfile(string

zipfilepath)

'", zipfilepath);

return

; }

using (zipinputstream s = new

zipinputstream(file.openread(zipfilepath)))

if (filename !=string.empty)

else}}

}}}}

view code

注:解壓檔案是解壓到當前程式的bin目錄下

3.將制定目錄下的檔案壓縮為.gz格式,並儲存到指定路徑(gzip)

//

使用gzip壓縮檔案的方法

static

bool gzipfile(string sourcefilename, string

zipfilename)

catch

(exception ee)

srcfile.close();

//關閉原始檔

zipfile.close();//

關閉壓縮檔案

return

blresult;

}//使用gzip解壓檔案的方法

static

bool ungzipfile(string zipfilename, string

unzipfilename)

blresult = true

; }

catch

(exception ee)

destfile.close();

//關閉目標檔案

zipfile.close();//

關閉壓縮檔案

return

blresult;

}

view code

4.將制定目錄下的檔案壓縮為.bz格式,並儲存到指定路徑(bzip2)

//

使用bzip壓縮檔案的方法

static

bool bzipfile(string sourcefilename, string

zipfilename)

catch

(exception ee)

srcfile.close();

//關閉原始檔流

zipfile.close();//

關閉壓縮檔案流

return

blresult;

}//使用bzip解壓檔案的方法

static

bool unbzipfile(string zipfilename,string

unzipfilename)

catch

(exception ee)

destfile.close();

//關閉目標檔案流

zipfile.close();//

關閉壓縮檔案流

return

blresult;

}

view code

C 壓縮檔案

首先新增system.io.com pression 注意deflatestream類不能用來壓縮大小超過4gb的檔案。gzipstream同樣不能用來壓縮大小超過4gb的檔案。public void compressfile string srcfile,string dstfile if fil...

C 壓縮檔案

c 壓縮檔案 方法1 filepath想要壓縮檔案的位址 zippath輸出壓縮檔案的位址 private void getfiletozip string filepath,string zippath 方法2 private void filetozip string path,string a...

C 壓縮檔案

最近悟出來乙個道理,在這兒分享給大家 學歷代表你的過去,能力代表你的現在,學習代表你的將來。十年河東十年河西,莫欺少年窮。學無止境,精益求精 上一節講述了c webapi傳參之post請求 ajax 本節 c 壓縮檔案的方法,直接上 如下public class ziputility filestr...