公用方法

//文件转换为字节  
public static byte[] File2Bytes(string path) { if (!System.IO.File.Exists(path)) { return new byte[0]; } FileInfo fi = new FileInfo(path); byte[] buff = new byte[fi.Length]; FileStream fs = fi.OpenRead(); fs.Read(buff, 0, Convert.ToInt32(fs.Length)); fs.Close(); return buff; }

  

//生成压缩文件
public static void CompressedFiles(string topDirectoryName, string zipedFileName, int compresssionLevel, string password, string comment) { using (ZipOutputStream zos = new ZipOutputStream(System.IO.File.Open(zipedFileName, FileMode.OpenOrCreate))) { if (compresssionLevel != 0) { zos.SetLevel(compresssionLevel);//设置压缩级别 } if (!string.IsNullOrEmpty(password)) { zos.Password = password;//设置zip包加密密码 } if (!string.IsNullOrEmpty(comment)) { zos.SetComment(comment);//设置zip包的注释 } //循环设置目录下所有的*.png文件(支持子目录搜索) foreach (string file in Directory.GetFiles(topDirectoryName, "*.txt", SearchOption.AllDirectories)) { if (System.IO.File.Exists(file)) { FileInfo item = new FileInfo(file); FileStream fs = System.IO.File.OpenRead(item.FullName); byte[] buffer = new byte[fs.Length]; fs.Read(buffer, 0, buffer.Length); ZipEntry entry = new ZipEntry(item.Name); zos.PutNextEntry(entry); zos.Write(buffer, 0, buffer.Length); } } } }

  

原文地址:https://www.cnblogs.com/opts/p/13231325.html