Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# 压缩文件

作者:顺我者未必能活   发布日期:2025-12-21   浏览:115

using System;
using System.IO;
using System.IO.Compression;

class Program
{
    static void Main(string[] args)
    {
        string startPath = @"c:\example\start"; // 源文件夹路径
        string zipPath = @"c:\example\result.zip"; // 压缩后的文件路径

        ZipFile.CreateFromDirectory(startPath, zipPath);

        Console.WriteLine("文件夹已成功压缩为 ZIP 文件。");
    }
}

解释说明:

  1. 命名空间引用:使用了 System.IOSystem.IO.Compression 命名空间,这两个命名空间提供了处理文件和压缩文件所需的功能。
  2. 主方法:在 Main 方法中,定义了两个字符串变量 startPathzipPath,分别表示要压缩的源文件夹路径和生成的 ZIP 文件路径。
  3. 压缩操作:调用 ZipFile.CreateFromDirectory 方法,该方法会将指定目录中的所有文件和子目录压缩到一个 ZIP 文件中。
  4. 输出提示信息:最后,程序输出一条消息,告知用户文件夹已成功压缩为 ZIP 文件。

如果需要对单个文件进行压缩,可以使用以下代码:

using System;
using System.IO;
using System.IO.Compression;

class Program
{
    static void Main(string[] args)
    {
        string filePath = @"c:\example\file.txt"; // 源文件路径
        string zipPath = @"c:\example\file.zip"; // 压缩后的文件路径

        using (FileStream originalFileStream = new FileStream(filePath, FileMode.Open))
        {
            using (FileStream compressedFileStream = new FileStream(zipPath, FileMode.Create))
            {
                using (GZipStream compressionStream = new GZipStream(compressedFileStream, CompressionMode.Compress))
                {
                    originalFileStream.CopyTo(compressionStream);
                }
            }
        }

        Console.WriteLine("文件已成功压缩为 ZIP 文件。");
    }
}

解释说明:

  1. 文件流操作:使用 FileStream 打开源文件和目标压缩文件。
  2. 压缩流:使用 GZipStream 进行压缩,CompressionMode.Compress 表示启用压缩模式。
  3. 复制数据:通过 CopyTo 方法将原始文件的数据复制到压缩流中。
  4. 输出提示信息:最后,程序输出一条消息,告知用户文件已成功压缩为 ZIP 文件。

上一篇:c# oxyplot

下一篇:c# list 复制

大家都在看

c# 二进制

c# datatable group by

c# tcp client

c# type.gettype

c# sqlconnection

c# string.format 小数位数

.net和c#

c#获取系统时间

c#游戏开发

c#网络编程

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站