Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/40: Рейтинг темы: голосов - 40, средняя оценка - 4.70
0 / 0 / 0
Регистрация: 08.08.2012
Сообщений: 18

GZipStream: Неправильное магическое число в заголовке GZip

08.08.2012, 09:58. Показов 8143. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO.Compression;
using System.IO;
 
public class GZip
{
    public static void Compress(String fileSource, String fileDestination, int buffsize)
    {
        using (var fsInput = new FileStream(fileSource, FileMode.Open, FileAccess.Read))
        {
            using (var fsOutput = new FileStream(fileDestination, FileMode.Create, FileAccess.Write))
            {
                using (var gzipStream = new GZipStream(fsOutput, CompressionMode.Compress))
                {
                    var buffer = new Byte[buffsize];
                    int h;
                    while ((h = fsInput.Read(buffer, 0, buffer.Length)) > 0)
                    {
                        gzipStream.Write(buffer, 0, h);
                    }
                }
            }
        }
    }
 
    public static void Decompress(String fileSource, String fileDestination, int buffsize)
    {
        using (var fsInput = new FileStream(fileSource, FileMode.Open, FileAccess.Read))
        {
            using (var fsOutput = new FileStream(fileDestination, FileMode.Create, FileAccess.Write))
            {
                using (var gzipStream = new GZipStream(fsInput, CompressionMode.Decompress))
                {
                    var buffer = new Byte[buffsize];
                    int h;
                    while ((h = gzipStream.Read(buffer, 0, buffer.Length)) > 0)
                    {
                        fsOutput.Write(buffer, 0, h);
                    }
                }
            }
        }
    }
 
 
      public static void Main()
    {
        Decompress("lol.zip", "zzz",1500);
    }
 
 
}
Брал код из темы GZipStream. Сжатие, распаковка файла.
Хочу попробовать разархивировать zip файл.
выдается ошибка в строчке
C#
1
 while ((h = gzipStream.Read(buffer, 0, buffer.Length)) > 0)
"Неправильное магическое число в заголовке GZip. Передача должна идти в поток GZip."
Интересует что конкретно не правильно в вызове, а так же как правильно оформляются пути в с#.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.08.2012, 09:58
Ответы с готовыми решениями:

Неправильное магическое число в заголовке GZip. Передача должна идти в поток GZip
Добрый день, пытаюсь написать свой мини-архиватор. Задача заключается в использовании только GzipStream, а сжатие и разжатие должно...

Магическое число
Я создаю текстовую игру на Python. Цель такова: Компьютер загадывает число от 1 до 100, и игрок должен угадать число. Если игрок...

Магическое число
Ребят, почему постоянно пишется, что моё число меньше магического? Но если убрать "srand(time(NULL));", то работает правильно, но...

3
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8729 / 3681 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
08.08.2012, 15:33
Цитата Сообщение от ExTower Посмотреть сообщение
Интересует что конкретно не правильно в вызове
Цитата Сообщение от MSDN, GZipStream
Сжатые объекты GZipStream, записанные в файл с расширением GZ, могут быть распакованы с помощью многих обычных средств сжатия; однако этот класс по существу не предоставляет функциональной возможности для добавления файлов в Zip-архивы или для извлечения файлов из этих архивов.
Цитата Сообщение от ExTower Посмотреть сообщение
как правильно оформляются пути в с#
C#
1
2
3
4
string path = @"c:\windows\system32\ntdll.dll"
// или
string path = "c:\\windows\\system32\\ntdll.dll"
// или я не понял что Вам требуется...
1
0 / 0 / 0
Регистрация: 08.08.2012
Сообщений: 18
08.08.2012, 17:23  [ТС]
Спасибо за помощь, все что нужно подсказали. А из универсальных распаковщиков (смотрю на кодплексе, если можете подскажите другой ресурс), какой можете подсказать, что бы работал с .upd, .7z, .rar. "Заранее спасибо".
0
0 / 0 / 0
Регистрация: 08.08.2012
Сообщений: 18
09.08.2012, 09:44  [ТС]
Воспользовался библиотекой SharpCompress. Нужные архивы .upd,.7z, .rar, .zip- все распаковывается очень удачно, хотя 7z распаковывался долго.
ссылка на ресурс http://sharpcompress.codeplex.com/
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.IO.Compression;
using SharpCompress;
using SharpCompress.Archive;
using SharpCompress.Common;
                                                                                                                                                                                                                                                                                   
 
public class paker {
    public static void Main()
    {
        var archive = ArchiveFactory.Open(@"C:\Temp\Ametist.031.7z");
        foreach (var entry in archive.Entries)
        {
            if (!entry.IsDirectory)
            {
                Console.WriteLine(entry.FilePath);
                entry.WriteToDirectory(@"C:\Temp", ExtractOptions.ExtractFullPath | ExtractOptions.Overwrite);
            }
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.08.2012, 09:44
Помогаю со студенческими работами здесь

Магическое число 10
Есть десяток ресурсов одной и той же тематики. Ресурсы разные практически во всем - некоторые на самописном движке, некоторые статичный...

Магическое число 1
Что-то вот есть в этих 1. Не знаю даже как описать. Так приятно когда видишь, что 1см тебя ждет или 1 сообщение или уведомление пришло... ...

Магическое число 0х53
При попытке прошить МК мега32А выдает сообщение об ошибке http://i9.pixs.ru/storage/4/5/6/Oshibka0h5_1209972_15284456.jpg Читаю...

Магическое число и ф-ция goto
Помогите усовершенствовать программку ,пожалуйста) После того как угадал число --- Возвращать в начало к выбору 3-х вариантов.Думал...

Std::bad_alloc магическое число
Читаю байты из файла вылетает ошибка:Unhandled exception at 0x75A6C41F in Fourie With File.exe: Microsoft C++ exception:...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru