C# 使用c将所有文件夹项添加到存档中#

C# 使用c将所有文件夹项添加到存档中#,c#,C#,我想添加(并覆盖)所有文件,包括单个文件夹中的其他文件夹。 例子: 在存档zip.zip中: work.docx 1.txt Photos |_ocean.png |_horse.png 添加另一个文件夹中的文件和文件夹后,如下所示: work.docx 1.txt code.cs Photos

我想添加(并覆盖)所有文件,包括单个文件夹中的其他文件夹。 例子: 在存档zip.zip中

work.docx             
1.txt                  
Photos          
 |_ocean.png          
 |_horse.png           
添加另一个文件夹中的文件和文件夹后,如下所示:

work.docx             
1.txt      
code.cs            
Photos          
 |_ocean.png
 |_horse.png
Program
 |_program.exe
 |_config.txt
我试着用爱奥尼亚的zip库做到这一点:

Ionic.Zip.ZipFile zf = Ionic.Zip.ZipFile.Read(@"C:\\zip.zip");
zf.UpdateDirectory(@"C:\\Program");
zf.Save();

它可以工作,但不会覆盖文件。

如果您使用的是.NET 4.5,则可以使用

System.IO.Compression.ZipArchive

它允许一步压缩

 ZipFile.CreateFromDirectory(@”C:\zip”, @”C:\zip.zip”);

要更新它,您可以使用ZipArchiveMode。更新

它会覆盖吗?您可以使用ZipArchiveMode.updatee示例,请?