C#壓縮文件夾坑~
阿新 • • 發佈:2017-08-02
暫時 open get code file public ise 壓縮文件夾 是否
dotNet瘋狂之路No.29
今天很殘酷,明天更殘酷,後天很美好,但是絕大部分人是死在明天晚上,只有那些真正的英雄才能見到後天的太陽。
We‘re here to put a dent in the universe. Otherwise why else even be here?
C#壓縮文件夾坑~
開始從網上找了個壓縮的示例 我去坑的不要不要的 沒辦法重新找 都是復制來復制去 沒啥意思
前提:ICSharpCode.SharpZipLib.dll引用
創建一個類
public class ZipClass { /// <summary> /// 功能:壓縮文件(暫時只壓縮文件夾下一級目錄中的文件,文件夾及其子級被忽略) /// </summary> /// <param name="dirPath">被壓縮的文件夾夾路徑</param> /// <param name="zipFilePath">生成壓縮文件的路徑</param> /// <returns>是否壓縮成功</returns> public static bool ZipFiles(string dirPath, string zipFilePath ) { try { string[] filenames = Directory.GetFiles(dirPath); using (ZipOutputStream s = new ZipOutputStream(File.Create(zipFilePath))) { s.SetLevel(9);//0-9 值越大壓縮率越高 byte[] buffer = new byte[4096]; foreach (string file in filenames) { ZipEntry entry = new ZipEntry(Path.GetFileName(file)); entry.DateTime = DateTime.Now; s.PutNextEntry(entry); using (FileStream fs = File.OpenRead(file)) { int sourceBytes; do { sourceBytes = fs.Read(buffer, 0, buffer.Length); s.Write(buffer, 0, sourceBytes); } while (sourceBytes > 0); } } s.Finish(); s.Close(); } } catch (Exception ex) { return false; } return true; } }
C#壓縮文件夾坑~