C#批量将文件夹打包
时间: 2024-09-20 16:17:59 浏览: 57
在C#中,可以使用`System.IO.Compression`命名空间下的`ZipFile`类来批量创建压缩文件(zip文件),将文件夹打包。下面是一个简单的示例,展示如何创建一个zip文件,包含指定文件夹中的所有内容:
```csharp
using System;
using System.IO;
using System.IO.Compression;
class Program
{
static void Main(string[] args)
{
// 指定要打包的源文件夹路径
string sourceFolder = "path_to_your_source_folder";
// 指定保存压缩包的位置和名称
string zipPath = "path_to_save_your_zip_file.zip";
// 创建一个新的ZipArchive实例
using (var archive = ZipFile.CreateFromDirectory(sourceFolder))
{
Console.WriteLine($"正在创建压缩包... ({sourceFolder} -> {zipPath})");
}
Console.WriteLine("打包完成!");
相关问题
C#批量打包文件夹,并重新命名打包文件
在C#中,你可以使用System.IO命名空间下的ZipFile类来实现批量打包文件夹并进行重命名。这里是一个简单的示例,假设你想将指定目录下的所有文件打包成一个新的ZIP文件,并对ZIP文件名进行自定义:
```csharp
using System;
using System.IO;
using System.IO.Compression;
class Program
{
static void Main(string[] args)
{
string sourceFolder = "源文件夹路径"; // 要打包的文件夹路径
string zipFileName = "目标打包文件名.zip"; // 打包后的ZIP文件名
string destinationFolder = "新文件夹路径" if null; // 如果需要,可以设置新的打包后文件保存位置,默认当前目录
// 创建ZipFile实例
using (var archive = new ZipArchive(zipFileName, ZipArchiveMode.Create, true))
{
// 遍历源文件夹中的每个文件
foreach (string filePath in Directory.GetFiles(sourceFolder, "*", SearchOption.AllDirectories))
{
// 获取文件名(包括路径)
string zipEntryName = Path.GetFileName(filePath);
// 创建zip条目并添加到压缩文件中
ZipArchiveEntry entry = archive.CreateEntryFromDirectory(zipEntryName, destinationFolder ?? "");
}
}
Console.WriteLine($"已成功打包文件到'{zipFileName}'");
}
}
```
阅读全文