С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
 Аватар для ut7du
0 / 0 / 0
Регистрация: 24.06.2016
Сообщений: 161
Записей в блоге: 1

Извлечение файлов из архива ZIP

03.06.2018, 12:33. Показов 3600. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет друзья !
Возникла необходимость загружать файл из интернета (он в формате ZIP)
и делать его декомпрессию т.е. извлечение файлов из архива

Делаю так :
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
string directoryPath = @"C:\Logger DM 2018\Download";
                DirectoryInfo directorySelected = new DirectoryInfo(directoryPath);
                foreach (FileInfo fileDecompress in directorySelected.GetFiles("*.zip"))
                {
                    Decompress(fileDecompress);
                }
                MessageBox.Show("Файл загружен и распакован !");
            }
            catch (WebException) { MessageBox.Show("Ошибка при загрузке файла"); }
 
 public static void Decompress(FileInfo fileToDecompress)
        {
            using (FileStream originalFileStream = fileToDecompress.OpenRead())
            {
                string currentFileName = fileToDecompress.FullName;
                string newFileName = currentFileName.Remove(currentFileName.Length - fileToDecompress.Extension.Length);
                using (FileStream compessFileStream = File.Create(newFileName))
                {
                    using(GZipStream commpressionStream = new GZipStream(compessFileStream,CompressionMode.Compress))
                    {
                        originalFileStream.CopyTo(compessFileStream);
                    }
                }
            }
        }
но файлы не раз архивируются. Помогите что делаю не так
Спасибо
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.06.2018, 12:33
Ответы с готовыми решениями:

Распаковка ZIP-архива с заменой файлов
Здравствуйте мне нужно распаковать zip заменой файлов, я делал так: ZipFile.ExtractToDirectory(zipfile, zipfolder); но в таком случаи...

Распаковка ZiP-архива с заменой файлов
Здравствуйте! Нигде нет толкового ответа про эту тему. Как извлечь, скажем, с помощью стандартной библиотеки, архив zip так, чтобы при...

Обновление zip архива
Добрый день. Подскажите пожалуйста, как проапдейтить архив. На входе имеем папку string dir1 = "C:\\test" Обновляем...

10
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
03.06.2018, 12:41
zip != gzip.
0
 Аватар для ut7du
0 / 0 / 0
Регистрация: 24.06.2016
Сообщений: 161
Записей в блоге: 1
03.06.2018, 12:57  [ТС]
Тогда как быть ? Что делать ? (Чернышевский еще задавал этот вопрос )
0
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
03.06.2018, 12:58
Есть же https://msdn.microsoft.com/ru-... .110).aspx
0
 Аватар для ut7du
0 / 0 / 0
Регистрация: 24.06.2016
Сообщений: 161
Записей в блоге: 1
03.06.2018, 14:10  [ТС]
Цитата Сообщение от ТабуретY Посмотреть сообщение
Я знаю что есть. Только не работает.
При использовании
C#
1
using System.IO.Compression;
-не видит ZipFile
Я это уже попробовал давно. У меня Windows 10 Enterprise LTSB
0
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
03.06.2018, 14:28
В настройках проекта надо поставить .NET Framework 4.5
0
 Аватар для ut7du
0 / 0 / 0
Регистрация: 24.06.2016
Сообщений: 161
Записей в блоге: 1
03.06.2018, 14:34  [ТС]
Цитата Сообщение от ТабуретY Посмотреть сообщение
В настройках проекта надо поставить .NET Framework 4.5
а как же - и это сделано давно.
Миниатюры
Извлечение файлов из архива ZIP  
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
03.06.2018, 14:52
Цитата Сообщение от ТабуретY Посмотреть сообщение
В настройках проекта надо поставить .NET Framework 4.5
И еще в Referenсes нужно добавить сборку (System.IO.Compression.FileSystem.dll), в которой этот самый ZipFile находится.
0
 Аватар для ut7du
0 / 0 / 0
Регистрация: 24.06.2016
Сообщений: 161
Записей в блоге: 1
03.06.2018, 20:32  [ТС]
Цитата Сообщение от Someone007 Посмотреть сообщение
И еще в Referenсes нужно добавить сборку (System.IO.Compression.FileSystem.dll), в которой этот самый ZipFile находится
Покажите как это сделать. Не знаю как это сделать
Простым using не получается
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
03.06.2018, 21:03
Лучший ответ Сообщение было отмечено ut7du как решение

Решение

https://msdn.microsoft.com/en-... 24kew.aspx
0
 Аватар для ut7du
0 / 0 / 0
Регистрация: 24.06.2016
Сообщений: 161
Записей в блоге: 1
03.06.2018, 21:45  [ТС]
Цитата Сообщение от Someone007 Посмотреть сообщение
И еще в Referenсes нужно добавить сборку (System.IO.Compression.FileSystem.dll), в которой этот самый ZipFile находится
Спасибо огромное !!! Все работает как часики
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.06.2018, 21:45
Помогаю со студенческими работами здесь

Прочитать свойства zip-архива
Доброго времени суток. Интересует следующий вопрос: каким образом можно считать "информацию" (см. скрин окна архиватора 7zip)...

Разархивация содержимого zip-архива
Привет :) Как разархивировать содержимое 1.zip в текущую папку?

Закачка zip архива на сервер
Приветствую всех. Пытаюсь закачать zip архив на сервер. Отловил запрос свой через сниффер, написал код, но что то не получается закачать....

Создание zip/rar архива
Очень много смотрел, читал и так и не нашёл как создать архив с файлами на c# NET.2.0 Помогите :)

Распаковка ZIP архива / DotNetZip
Доброго времени суток уважаемые! Столкнулся с казалось бы, элементарной задачей: распаковать ZIP архив в указанную папку, отображая...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru