Я пытаюсь программно разархивировать заархивированный файл.
Я пробовал использовать класс System.IO.Compression.GZipStream в .NET, но когда мое приложение запускается (фактически модульный тест), я получаю это исключение:
System.IO.InvalidDataException: магическое число в заголовке GZip не правильно. Убедитесь, что вы передаете поток GZip.
Теперь я понимаю, что файл .zip — это не одно и то же. как файл .gz, и этот GZip — это не то же самое, что Zip.
Однако, поскольку я могу извлечь файл, вручную дважды щелкнув заархивированный файл, а затем нажав кнопку «Извлечь все файлы», я думаю, что должно быть способ сделать это и в коде.
Поэтому я попытался использовать Process.Start() с путем к заархивированному файлу в качестве входных данных. Это заставляет мое приложение открывать окно, показывающее содержимое заархивированного файла. Это все нормально, но приложение будет установлено на сервер, где нет никого, кто мог бы нажать кнопку «Извлечь все файлы».
Итак, как мне заставить мое приложение извлекать файлы в заархивированных файлах?
Или есть другой способ сделать это? Я предпочитаю делать это в коде, не загружая сторонние библиотеки или приложения; отделу безопасности это не особо нравится...
Подробнее здесь: https://stackoverflow.com/questions/836 ... lly-in-net
Программно разархивируйте файлы в .net ⇐ C#
Место общения программистов C#
1728377894
Anonymous
Я пытаюсь программно разархивировать заархивированный файл.
Я пробовал использовать класс System.IO.Compression.GZipStream в .NET, но когда мое приложение запускается (фактически модульный тест), я получаю это исключение:
System.IO.InvalidDataException: магическое число в заголовке GZip не правильно. Убедитесь, что вы передаете поток GZip.
Теперь я понимаю, что файл .zip — это не одно и то же. как файл .gz, и этот GZip — это не то же самое, что Zip.
Однако, поскольку я могу извлечь файл, вручную дважды щелкнув заархивированный файл, а затем нажав кнопку «Извлечь все файлы», я думаю, что должно быть способ сделать это и в коде.
Поэтому я попытался использовать Process.Start() с путем к заархивированному файлу в качестве входных данных. Это заставляет мое приложение открывать окно, показывающее содержимое заархивированного файла. Это все нормально, но приложение будет установлено на сервер, где нет никого, кто мог бы нажать кнопку «Извлечь все файлы».
Итак, как мне заставить мое приложение извлекать файлы в заархивированных файлах?
Или есть другой способ сделать это? Я предпочитаю делать это в коде, не загружая сторонние библиотеки или приложения; отделу безопасности это не особо нравится...
Подробнее здесь: [url]https://stackoverflow.com/questions/836736/unzip-files-programmatically-in-net[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия