使用 DotNetZip 在 Zip 文件上设置密码
Set password on Zip file using DotNetZip
我正在使用 DotNetZip 压缩我的文件,但我需要在 zip 中设置密码。
我试过了:
public void Zip(string path, string outputPath)
{
using (ZipFile zip = new ZipFile())
{
zip.AddDirectory(path);
zip.Password = "password";
zip.Save(outputPath);
}
}
但是输出的zip没有密码
参数path
有一个子文件夹,例如:
path = c:\path\
在路径里面我有 subfolder
怎么了?
只有在设置 Password
属性 之后添加的条目才会应用密码。为了保护您正在添加的目录,只需在调用 AddDirectory
.
之前设置密码即可
using (ZipFile zip = new ZipFile())
{
zip.Password = "password";
zip.AddDirectory(path);
zip.Save(outputPath);
}
请注意,这是因为 Zip 文件上的密码分配给 zip 文件中的条目,而不是 zip 文件本身。这使您可以保护一些 zip 文件,而另一些则不受保护:
using (ZipFile zip = new ZipFile())
{
//this won't be password protected
zip.AddDirectory(unprotectedPath);
zip.Password = "password";
//...but this will be password protected
zip.AddDirectory(path);
zip.Save(outputPath);
}
我正在使用 DotNetZip 压缩我的文件,但我需要在 zip 中设置密码。
我试过了:
public void Zip(string path, string outputPath)
{
using (ZipFile zip = new ZipFile())
{
zip.AddDirectory(path);
zip.Password = "password";
zip.Save(outputPath);
}
}
但是输出的zip没有密码
参数path
有一个子文件夹,例如:
path = c:\path\
在路径里面我有 subfolder
怎么了?
只有在设置 Password
属性 之后添加的条目才会应用密码。为了保护您正在添加的目录,只需在调用 AddDirectory
.
using (ZipFile zip = new ZipFile())
{
zip.Password = "password";
zip.AddDirectory(path);
zip.Save(outputPath);
}
请注意,这是因为 Zip 文件上的密码分配给 zip 文件中的条目,而不是 zip 文件本身。这使您可以保护一些 zip 文件,而另一些则不受保护:
using (ZipFile zip = new ZipFile())
{
//this won't be password protected
zip.AddDirectory(unprotectedPath);
zip.Password = "password";
//...but this will be password protected
zip.AddDirectory(path);
zip.Save(outputPath);
}