当我使用DotNetZip压缩文件夹时,它正常工作,但是当在基于Linux的服务器中解压缩压缩文件夹时,它无法正常工作。服务器团队告诉我,虽然压缩文件使用'/'而不是'\',因为我们的系统是基于Linux的。
如何在使用DotNetZip压缩文件夹时提及路径分隔符?
以下是压缩文件夹的代码。
ZipFile zp = new ZipFile();
zipfileName = Server.MapPath("~/folder") + @"/" + folderName + @".zip";
if (Directory.Exists(directoryPath))
{
zp.AddDirectory(directoryPath, folderName);
zp.Save(zipfileName);
}
答案 0 :(得分:1)
我找到了答案。我改变了我的代码如下,它现在正在工作。
Ionic.Zip.ZipFile zp = new Ionic.Zip.ZipFile();
zp.AlternateEncodingUsage = ZipOption.Always;
zp.AlternateEncoding = Encoding.UTF8;
zp.AddDirectory(directoryPath, folderName);
zp.Save(zipfileWithPathAndName);