Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#Ionic.Zip文件,出现多级目录 解决方案目录 对的 错_C#_Zip - Fatal编程技术网

C#Ionic.Zip文件,出现多级目录 解决方案目录 对的 错

C#Ionic.Zip文件,出现多级目录 解决方案目录 对的 错,c#,zip,C#,Zip,====================================================== 代码 谁能帮我? 谢谢 看着电话,我怀疑你想打电话 zip.AddFiles(arrFileName, false, ""); 这样就不会保留目录层次结构。有可能只是 zip.AddFiles(arrFileName, ""); 也会起作用;我不太清楚 (此外,我强烈建议您去掉方法中的try/catch块-这比无用更糟糕,因为它只会丢失信息。如果在任何ZipFile方法中引发异常,您

======================================================

代码 谁能帮我? 谢谢

看着电话,我怀疑你想打电话

zip.AddFiles(arrFileName, false, "");
这样就不会保留目录层次结构。有可能只是

zip.AddFiles(arrFileName, "");
也会起作用;我不太清楚


(此外,我强烈建议您去掉方法中的
try
/
catch
块-这比无用更糟糕,因为它只会丢失信息。如果在任何
ZipFile
方法中引发异常,您将由于重新引发异常的方式而丢失完整的堆栈跟踪。)

非常感谢。zip.AddFiles(文件名“”);工作正常。我从方法中删除了try/catch块。
E:\WebSolution\GenerateFiles
 | NEW HOTEL-4-64-1379.pdf
 | NEW HOTEL-4-64-1379.xls
 | NEW HOTEL-4-64-1379.zip (Extract) 
                   |WebSolution
                       |--|GenerateFiles
                       |--|--|NEW HOTEL-4-64-1379.pdf
                       |--|--|NEW HOTEL-4-64-1379.xls
public void Main(){

   string path=Server.MapPath("~/GenerateFiles"); 
   string zipPackageFileName=System.IO.Path.Combine(path,"NEW HOTEL-4-64-1379.zip");

   string[] arrFileName=new string[]{
        System.IO.Path.Combine(path,"NEW HOTEL-4-64-1379.pdf"),
    System.IO.Path.Combine(path,"NEW HOTEL-4-64-1379.pdf")
   };   
   
   CompressFilesToZip(arrFileName,zipPackageFileName);
   
}

using Ionic.Zip;
public void CompressFilesToZip(String[] arrFileName, string zipPackageFileName)
{
    try
    {
        using (ZipFile zip = new ZipFile())
        {
            zip.AddFiles(arrFileName);
            zip.Encryption = EncryptionAlgorithm.WinZipAes256;
            zip.CompressionLevel = Ionic.Zlib.CompressionLevel.BestCompression;
            zip.Password = PASSWORD_ATTACHMENT;
            zip.Save(zipPackageFileName);
        }
    }
    catch (Exception e)
    {
        throw e;
    }
}
zip.AddFiles(arrFileName, false, "");
zip.AddFiles(arrFileName, "");