7zip:在C#中,如何将不同目录中同名的多个文件添加到同一个zip文件中?

时间:2011-10-11 20:15:44

标签: 7zip

我创建了一个C#片段,调用7zip(7za)将文件列表添加到zip存档中。问题是不同目录中的多个文件具有相同的名称,因此7zip要么抱怨重复的名称,要么替换第一个文件,第二个文件只存储最后添加的文件。我不能递归扫描一个允许重复的目录。

有没有办法强制7zip存储目录,或者在ASP.NET MVC 3 C#中创建具有重复文件名的zip文件时不考虑完整路径?

我们图像的路径是每五位数分解的GTIN编号。最后五个是图像的名称。

 G:\1234\56789\01234.jpg
 G:\4321\09876\01234.jpg
 G:\5531\33355\01234.jpg

这些都无法正确存储在7zip存档中。

2 个答案:

答案 0 :(得分:1)

您可以使用SevenZipSharp:http://sevenzipsharp.codeplex.com/围绕7zip的包装。您将完全控制代码。

答案 1 :(得分:0)

我们通过创建一个不包含前导反斜杠的文件列表,然后从包含它们的目录运行应用程序,设法在同一个存档中获取多个:

1234\56789\01234.jpg
4321\09876\01234.jpg
5531\33355\01234.jpg

它现在解决了。有更好想法的人吗?