从示例中,我很好地掌握了如何提取 zip 文件。
在几乎每个示例中,识别 ZipEntry 何时是目录的方法如下
string directoryName = Path.GetDirectoryName(theEntry.Name);
string fileName = Path.GetFileName(theEntry.Name);
if (directoryName.Length > 0)
Directory.CreateDirectory(Path.Combine(destinationDirectory, directoryName));
if (fileName != String.Empty)
{
//read data and write to file
}
现在很好,所有(遇到的目录,创建它),当文件被提取时,目录是可用的。
我可以将文件添加到 zip 文件中,但如何添加文件夹?我知道我将遍历目录,添加遇到的文件(并且它们的 ZipEntry.Name 属性已正确填充),但是如何将 ZipEntry 添加到存档并指示 ZipOutputStream 它是一个目录?