gpt4 book ai didi

c# - 如何生成临时 Zip 文件,然后在下载后自动删除它?

转载 作者:太空狗 更新时间:2023-10-30 00:22:30 25 4
gpt4 key购买 nike

我有一个下载页面,其中有 3 个下载选项:Word、Zip 和 PDF。有一个包含 .doc 文件的文件夹。当用户单击页面上的 Zip 选项时,我希望 ASP.NET 将包含 .doc 文件的文件夹压缩到临时 .zip 文件中。然后客户端将从服务器下载它。用户下载完成后,临时 Zip 文件应自行删除。

如何使用 ASP.NET 2.0 C# 执行此操作?

注意:我知道如何使用 C# ASP.NET 2.0 压缩和解压缩文件以及从系统中删除文件。

最佳答案

使用 DotNetZip您可以将 zip 文件直接保存到 Response.OutputStream。不需要临时 Zip 文件。

    Response.Clear();
// no buffering - allows large zip files to download as they are zipped
Response.BufferOutput = false;
String ReadmeText= "Dynamic content for a readme file...\n" +
DateTime.Now.ToString("G");
string archiveName= String.Format("archive-{0}.zip",
DateTime.Now.ToString("yyyy-MMM-dd-HHmmss"));
Response.ContentType = "application/zip";
Response.AddHeader("content-disposition", "attachment; filename=" + archiveName);
using (ZipFile zip = new ZipFile())
{
// add a file entry into the zip, using content from a string
zip.AddFileFromString("Readme.txt", "", ReadmeText);
// add the set of files to the zip
zip.AddFiles(filesToInclude, "files");
// compress and write the output to OutputStream
zip.Save(Response.OutputStream);
}
Response.Flush();

关于c# - 如何生成临时 Zip 文件,然后在下载后自动删除它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/921308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com