首页 > 解决方案 > 我怎样才能只下载我的 pdf 文件而不是完整的文件路径和文件夹

问题描述

所以我终于让它工作并将我的pdf文件下载到一个zip文件中。见下文:

List<string> manypaths = (List<string>)TempData["temp"];
var startpath = manypaths;

using (Ionic.Zip.ZipFile zip = new Ionic.Zip.ZipFile())
{
    zip.AddFiles(manypaths);

    MemoryStream output = new MemoryStream();
    zip.Save(output);
    return File(output.ToArray(), "application/zip");
}

因此,manypaths 列表变量保留了一些指向 pdf 文件的路径,这些路径就像\\\\ost-stji01\pdfstorage\deposit\02_29_2019.pdf

因此,当用户下载这些文件时,他们必须点击多个文件夹结构,即ost0ji01 > pdfstorage > desposit >他们才能访问他们的文件。

我的问题是如何只下载文件而不是整个文件夹结构。所以当他们打开 zip 文件时,它的所有文件都不需要经过 3 或 4 个文件夹目录。

标签: c#asp.net-mvczipdotnetzip

解决方案


如果您想展平 ZIP 文件中的路径,请使用它。

zip.AddFiles(manypaths, @"\");

第二个参数AddFiles允许您指定档案中文件的路径,并且\是档案中的根。因此,所有文件都将直接位于您的存档中,没有子文件夹。


推荐阅读