如何从文件夹中压缩文件但将其分开

How to zip files from folder but keep it separated

我有 1 个包含许多 txt 文件的文件夹。我想压缩它们但分开了。

示例:
在这个文件夹中我有 A.txt, B.txt, C.txt.

我想压缩所有文件但分开了所以结果将是 A.zip, B.zip , C.zip.

string outputPath = "C:\Users\Desktop\VA";
string path = outputPath + "\VA_" + tglskrg;
foreach (string dirFile in Directory.GetDirectories(path))
{
    foreach (string fileName in Directory.GetFiles(dirFile))
    {
        using (ZipFile zip = new ZipFile())
        {
            zip.UseUnicodeAsNecessary = true;
            zip.AddFile(); //dont know what to put
            zip.Save(); //dont know what to put
        }
    }
}

任何帮助将不胜感激。

我正在使用 dotnetzip (Ionic.zip) 和 C# Visual Studio Express 2010。

您可以按如下方式进行:

foreach (string fileName in Directory.GetFiles(dirFile))
{
    var zipFile = Path.Combine(outputPath, Path.ChangeExtension(fileName, ".zip"));
    using (ZipFile zip = new ZipFile())
    {
        zip.AddFile(fileName); // add A.txt to the zip file
        zip.Save(zipFile); // save as A.zip
    }
}

这将获取文件夹 dirFile 中找到的所有文件,并将它们保存在 outputPath 下,文件名相同,但将扩展名替换为 .zip