我正在尝试从一个文件夹中的所有文件创建一个 zip 文件,但无法在线找到任何相关片段。我正在尝试做这样的事情:
DirectoryInfo dir = new DirectoryInfo("somedir path");
ZipFile zip = new ZipFile();
zip.AddFiles(dir.getfiles());
zip.SaveTo("some other path");
非常感谢任何帮助。
编辑:我只想压缩文件夹中的文件,而不是子文件夹。
最佳答案
在您的项目中引用 System.IO.Compression 和 System.IO.Compression.FileSystem
using System.IO.Compression;
string startPath = @"c:\example\start";//folder to add
string zipPath = @"c:\example\result.zip";//URL for your ZIP file
ZipFile.CreateFromDirectory(startPath, zipPath, CompressionLevel.Fastest, true);
string extractPath = @"c:\example\extract";//path to extract
ZipFile.ExtractToDirectory(zipPath, extractPath);
要仅使用文件,请使用:
//Creates a new, blank zip file to work with - the file will be
//finalized when the using statement completes
using (ZipArchive newFile = ZipFile.Open(zipName, ZipArchiveMode.Create))
{
foreach (string file in Directory.GetFiles(myPath))
{
newFile.CreateEntryFromFile(file, System.IO.Path.GetFileName(file));
}
}
关于c# - 从文件夹中的所有文件创建 zip 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39732407/