12 / 12 / 0
Регистрация: 04.07.2011
Сообщений: 287
.NET 3.x

Распаковка архива (.zip)

05.02.2013, 13:33. Показов 5942. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно программно распаковать zip архив. Какие библиотеки могут это сделать ? Можно ли распаковать архив встроенными средствами ? Как это всё сделать ? Дайте пожалуйста какой нибудь пример.
Использую .net framework 3.5
Заранее благодарен!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.02.2013, 13:33
Ответы с готовыми решениями:

Программная распаковка архива используя ionic.zip - "невозможно преобразовать ionicZipEntry в systemEventArgs"
Использую библиотеку ionicZip (DotNetZip). Ссылка на примеры: http://dotnetzip.codeplex.com/wikipage?title=VB-examples Использую...

Распаковка архива с именем архива по маске
Всем привет! Понимаю, что тема с архивами уже избитая, но все же есть определенная задача. Прошу помощи. Задача состоит в следующем: ...

Распаковка запароленного архива
Как распаковка или извлеч файл архив (с пароль)

7
 Аватар для Artem333
23 / 23 / 1
Регистрация: 12.10.2012
Сообщений: 288
05.02.2013, 19:08
Братан вот глянь это http://vbbook.ru/vb.net/rabota-s-zip-vbnet/ ну и если тебе лень
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub 
 
Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' Разархивация
Dim sh As New Shell32.Shell()
If Dir(TextBox2.text & "") = vbNullString Then My.Computer.FileSystem.CreateDirectory(TextBox2.text & "") ' если папка не существует то её создаём
If Dir(TextBox1.text) = vbNullString Then ' Если файл не существует
MsgBox("Неверно указан файл zip.")
Exit Sub
End If
Dim output As Shell32.Folder = sh.NameSpace(TextBox2.text & "")
Dim input As Shell32.Folder = sh.NameSpace(TextBox1.text & "")
output.CopyHere(input.Items, 16)
MsgBox("Готово.")
End Sub
TextBox1.text - задаёт путь к архиву. Например C:1.zip
TextBox2.text - задаёт папку куда разархивировать. Например C:1


Это не всё! В коде фигурирует библиотека Shell32. Эта библиотека есть в windows изначально. С помощью неё Вы можете открывать архивы .zip без WinRar. Нам нужно её присоединить к нашему проекту. Чтобы добавить жмём правой кнопкой по названию нашего проекта в Обозреватель решений и там выбираем Добавить ссылку. В появившемся окне, во вкладке COM ищем Microsoft Shell Controls, а если её нету в списке, то через обзор добавляем сами(путь C:Windowssystem32). Вот собственно и всё. Удачи в программировнии.


И говорим спасибо автору статьи (это не я)
0
12 / 12 / 0
Регистрация: 04.07.2011
Сообщений: 287
05.02.2013, 22:18  [ТС]
Я это и использовал но ничего не получается . Вот тема с ошибкой : Не распаковывается архив zip
0
 Аватар для Маршинин
55 / 55 / 1
Регистрация: 05.12.2012
Сообщений: 167
Записей в блоге: 1
06.02.2013, 04:32
Я фиг знаю почему, но у меня тоже была ошибка с цифрой 16, заменил её на 4 как по маслу поехало!
http://msdn.microsoft.com/en-u... s.85).aspx
0
 Аватар для Russiablackbird
62 / 62 / 1
Регистрация: 23.01.2012
Сообщений: 254
06.02.2013, 11:36
у меня первоначально 4 или 6 шло,т.к надо было progressbar показать. А 16 вроде полностью скрытый режим
0
399 / 318 / 53
Регистрация: 14.08.2014
Сообщений: 1,010
02.11.2014, 12:10
Ребят, а есть варианты как распаковать архив zip на котором установлен пароль? Архив был создан WinRar'ом. Пароль от архива известен.
0
 Аватар для vova2112
147 / 135 / 34
Регистрация: 28.02.2014
Сообщений: 165
02.11.2014, 19:18
С помощью средств Net4.0 можно.

если ведрить в проект ссылку на System.IO.Compression то так:
VB.NET
1
2
Using zip = New ZipArchive(New IO.StreamReader("Архив").BaseStream, 0, False, System.Text.Encoding.GetEncoding(866))
End Using
А если добавить ещё ссылку на System.IO.Compression.FileSystem то будет немного проще:
VB.NET
1
2
Using zip As ZipArchive = ZipFile.Open("Архив", 0, System.Text.Encoding.GetEncoding(866))
End Using
1
 Аватар для edward_freedom
1569 / 1448 / 303
Регистрация: 01.10.2011
Сообщений: 2,636
02.11.2014, 19:51
Дядя Корней, Поиском влом воспользоваться?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.11.2014, 19:51
Помогаю со студенческими работами здесь

Распаковка архива из ресурсов
Я делаю инсталлятор для моей VB программы. Нужно чтобы ПОЛЬЗОВАТЕЛЬ выбрал место, куда распакуется архив с программой. Подскажите код,...

Распаковка архива с расширением .arj
Всем доброго времени суток. Ребята, не подскажите как можно распаковать архив с расширением .arj? Может какая -то библиотека есть для...

Ошибка создания архива zip
Вот есть процедура создания(экспорта данных в архив): Sub _ExportTo7z(fileName As String) Dim myProcess As Process =...

Извлечение файлов из архива ZIP
В общем не получается нормально работать с zip файлами. Хотел работать стандартными средствами .net платформы, но как то не получилось...

Неверная кодировка при распаковке zip архива
для распаковки решил воспользоваться не стандартной библиотекой, а библиотекой DotNetZip (Ionic.Zip), но при распаковки архива имена файлов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Аутентификация OAuth в Python
py-thonny 22.05.2025
OAuth (Open Authorization) — это целый стандарт для делегированного доступа. Звучит занудно? Давайте проще: OAuth позволяет приложениям получать доступ к информации пользователя на сторонних сервисах. . .
Хеширование и соль паролей в веб-приложениях C#
stackOverflow 22.05.2025
Когда-то в начале своей карьеры я тоже грешил простейшими подходами к хранению паролей – MD5-хеширование казалось верхом защиты. Но технологии не стоят на месте, вычислительные мощьности растут, и. . .
Генераторы Python для эффективной обработки данных
AI_Generated 21.05.2025
В Python существует инструмент настолько мощный и в то же время недооценённый, что я часто сравниваю его с тайным оружием в арсенале программиста. Речь идёт о генераторах — одной из самых элегантных. . .
Чем заменить Swagger в .NET WebAPI
stackOverflow 21.05.2025
Если вы создавали Web API на . NET в последние несколько лет, то наверняка сталкивались с зелёным интерфейсом Swagger UI. Этот инструмент стал практически стандартом для документирования и. . .
Использование Linq2Db в проектах C# .NET
UnmanagedCoder 21.05.2025
Среди множества претендентов на корону "идеального ORM" особое место занимает Linq2Db — микро-ORM, балансирующий между мощью полноценных инструментов и легковесностью ручного написания SQL. Что. . .
Реализация Domain-Driven Design с Java
Javaican 20.05.2025
DDD — это настоящий спасательный круг для проектов со сложной бизнес-логикой. Подход, предложенный Эриком Эвансом, позволяет создавать элегантные решения, которые точно отражают реальную предметную. . .
Возможности и нововведения C# 14
stackOverflow 20.05.2025
Выход версии C# 14, который ожидается вместе с . NET 10, приносит ряд интересных нововведений, действительно упрощающих жизнь разработчиков. Вы уже хотите опробовать эти новшества? Не проблема! Просто. . .
Собеседование по Node.js - вопросы и ответы
Reangularity 20.05.2025
Каждому разработчику рано или поздно приходится сталкиватся с техническими собеседованиями - этим стрессовым испытанием, где решается судьба карьерного роста и зарплатных ожиданий. В этой статье я. . .
Cython и C (СИ) расширения Python для максимальной производительности
py-thonny 20.05.2025
Python невероятно дружелюбен к начинающим и одновременно мощный для профи. Но стоит лишь заикнуться о высокопроизводительных вычислениях — и энтузиазм быстро улетучивается. Да, Питон медлительнее. . .
Безопасное программирование в Java и предотвращение уязвимостей (SQL-инъекции, XSS и др.)
Javaican 19.05.2025
Самые распространёные векторы атак на Java-приложения за последний год выглядят как классический "топ-3 хакерских фаворитов": SQL-инъекции (31%), межсайтовый скриптинг или XSS (28%) и CSRF-атаки. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru