![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| amarenkov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 21.2.2008 Где: Воронеж Репутация: нет Всего: нет |
Добрый день.
Для работы с zip-архивами пользую класс ZipFile из SharpZipLib. В этом классе есть метод добавления директории в архив (AddDirectory()), но нет функции удаления директории. Кто-нибудь знает, как удалить из архива директорию? Заранее спасибо |
|||
|
||||
| alexsid1982 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 19.3.2008 Репутация: нет Всего: нет |
Кто-нить знает.
Надо распаковать архив в отдельный временный каталог и создать новый, но уже без ненужной директории. К сожалению SharpZipLib галимоватая весч и не позволяет это сделать к-н другим способом. |
|||
|
||||
| amarenkov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 21.2.2008 Где: Воронеж Репутация: нет Всего: нет |
alexsid1982 , не айс. Я с архивами работаю в памяти, и не хотелось бы менять этот принцип. Надо как-нибудь изголиться. Есть еще какие-нибудь идеи
|
|||
|
||||
| ptr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: нет Всего: 14 |
У ZipFile есть метод Delete, принимающий ZipEntry. Он удаляет не только файлы, но и директории. Это сообщение отредактировал(а) ptr - 15.5.2008, 13:14 -------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
|||
|
||||
| amarenkov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 21.2.2008 Где: Воронеж Репутация: нет Всего: нет |
Да, но директория не есть ZipEntry
|
|||
|
||||
| ptr |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: нет Всего: 14 |
Кто тебе сказал? Её можно получить функцией GetEntry.
Это сообщение отредактировал(а) ptr - 15.5.2008, 14:07 -------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
||||
|
|||||
| amarenkov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 21.2.2008 Где: Воронеж Репутация: нет Всего: нет |
||||
|
||||
| ptr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: нет Всего: 14 |
Ну дак у тебя файла FOLDER видно в архиве нет
Кстати могут возникнуть проблемы с удалением непустных директории. Раньше #ziplib не умел рекурсивно удалять директории, как сейчас не знаю. Это сообщение отредактировал(а) ptr - 15.5.2008, 14:17 -------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
|||
|
||||
| amarenkov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 21.2.2008 Где: Воронеж Репутация: нет Всего: нет |
||||
|
||||
| ptr |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: нет Всего: 14 |
Пробовал "FOLDER" - файл "FOLDER/" - директория Слеш в конце видишь? Добавлено через 6 минут и 6 секунд Вот тебе код, удаляющий директорию directory из архива archive.zip.
Это сообщение отредактировал(а) ptr - 15.5.2008, 14:31 -------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
||||
|
|||||
| amarenkov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 21.2.2008 Где: Воронеж Репутация: нет Всего: нет |
ptr , огромное спасибо
Никак не ожидал такого подвоха - пробовал с \ в начале, в конце... Но до / не додумался, а у тебя в посте не заметил. Спасибо |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |