基本信息
源码名称:C# 将多个文件打包压缩成一个ZIP文件包
源码大小:0.38M
文件格式:.zip
开发语言:C#
更新时间:2016-03-28
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
多文件打压成一个ZIP包
多文件打压成一个ZIP包
调用方法:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ZipRar
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
//打包
List<string> listFile = new List<string>();
listFile.Add(System.Environment.CurrentDirectory @"\Data\EquimentInfo.ini");
listFile.Add(System.Environment.CurrentDirectory @"\Data\BuildingEnergy.ini");
listFile.Add(System.Environment.CurrentDirectory @"\Data\parse.ini");
listFile.Add(System.Environment.CurrentDirectory @"\Data\terminalinfo.ini");
listFile.Add(System.Environment.CurrentDirectory @"\Data\publicdatapara.db");
listFile.Add(System.Environment.CurrentDirectory @"\Data\VarInfo.db");
commonUtil.ZipFile(listFile, System.Environment.CurrentDirectory @"\Data\Config.zip", 2);
}
}
}
下为核心代码:
/// <summary>
/// 压缩duo个文件
/// </summary>
/// <param name="fileToZip">要进行压缩的文件名</param>
/// <param name="zipedFile">压缩后生成的压缩文件名</param>
public static void ZipFile(List<string> fileToZipS, string zipedFile, int Level)
{
foreach (string fileToZip in fileToZipS)
{
//如果文件没有找到,则报错
if (!File.Exists(fileToZip))
{
throw new System.IO.FileNotFoundException("指定要压缩的文件: " fileToZip " 不存在!");
break;
}
}
using (FileStream ZipFile = File.Create(zipedFile))
{
using (ZipOutputStream ZipStream = new ZipOutputStream(ZipFile))
{
foreach (string fileToZip in fileToZipS)
{
string fileName = fileToZip.Substring(fileToZip.LastIndexOf("\\") 1);
using (FileStream fs = File.OpenRead(fileToZip))
{
byte[] buffer = new byte[fs.Length];
fs.Read(buffer, 0, buffer.Length);
fs.Close();
ZipEntry ZipEntry = new ZipEntry(fileName);
ZipStream.PutNextEntry(ZipEntry);
ZipStream.SetLevel(Level);
ZipStream.Write(buffer, 0, buffer.Length);
}
}
ZipStream.Finish();
ZipStream.Close();
}
}
}