7zip: в C #, как добавить несколько файлов с одинаковыми именами в разных каталогах в один zip-файл?

#7zip

#7zip

Вопрос:

Я создал фрагмент кода C #, который вызывает 7zip (7za) для добавления списка файлов в zip-архив. Проблема в том, что несколько файлов в разных каталогах имеют одинаковые имена, поэтому 7zip либо жалуется на повторяющиеся имена, либо заменяет первый файл вторым, сохраняя только последний добавленный. Я не могу рекурсивно сканировать каталог, который допускал бы дубликаты.

Есть ли способ заставить 7zip сохранить каталог или в ASP.NET MVC 3 C # для создания zip-файлов с повторяющимися именами файлов, если не учитывать полный путь?

Путь к нашему изображению — это номер GTIN, разделенный на каждые пять цифр. Последние пять — это имя изображения.

  G:1234567891234.jpg
 G:432198761234.jpg
 G:5531333551234.jpg
  

Все они не будут правильно сохранены в архиве 7zip.

Ответ №1:

Вы можете использовать SevenZipSharp: http://sevenzipsharp.codeplex.com / оболочка вокруг 7zip. У вас будет полный контроль над кодом.

Комментарии:

1. github.com/squid-box/SevenZipSharp новое местоположение

Ответ №2:

Нам удалось получить несколько файлов в одном архиве, создав список файлов, который не содержит начальных обратных косых черт, а затем запустив приложение из каталога, содержащего их:

 1234567891234.jpg
432198761234.jpg
5531333551234.jpg
  

На данный момент это решает проблему. У кого-нибудь есть идея получше?