C# zip 文件到包含所有目录的用户
本文关键字:用户 包含所 zip 文件 | 更新日期: 2023-09-27 18:36:58
>我有一个压缩文件并将其下载到用户机器的功能。
但是,当它压缩文件时,它们位于几个文件夹中。
例如,如果我想压缩一个名为test.doc的文件,并且它位于c:/document/the folder/test中.doc
在压缩文件夹中,还将有"文档"文件夹和"文件夹"。我只想把文件放在那里
这是我的代码...
public FileStreamResult DownloadDocs()
{
MemoryStream workStream = new MemoryStream();
ZipFile zip = new ZipFile();
string[] fileEntries = Directory.GetFiles(Server.MapPath(SettingManager.OnlineForms));
foreach (string fileName in fileEntries)
{
FileInfo fi = new FileInfo(fileName);
string name = Server.MapPath(SettingManager.OnlineForms + fi.Name);
zip.AddFile(name);
}
zip.Save(workStream);
workStream.Position = 0;
FileStreamResult fileResult = new FileStreamResult(workStream, System.Net.Mime.MediaTypeNames.Application.Zip);
fileResult.FileDownloadName = "OnlineForms.zip";
return fileResult;
}
更改行
Zip.AddFile(name);
自
Zip.AddFile(name, string.Empty);
您也可以避免调用以获取文件信息。文件名数组应该足够了。