Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.83/244: Рейтинг темы: голосов - 244, средняя оценка - 4.83
31 / 31 / 3
Регистрация: 18.03.2009
Сообщений: 381
Записей в блоге: 2
1

Как написать простейший архиватор?

29.07.2010, 18:54. Показов 50838. Ответов 45
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Необходимо написать программу -архиватор, степень сжатия неважна, лишь бы работало. Ничего интересного и понятного в интернете не нашел, на форуме тоже. Может у кого нибудь есть простой и понятный исходник архиватора, или подскажите что и где почитать, пжл.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.07.2010, 18:54
Ответы с готовыми решениями:

Как написать простейший калькулятор
Как написать простейший калькулятор?

Написать простейший текстовый редактор (есть код на Delphi)
Народ нужна ваша помощь, на Delphi делал ее, а на Builder C++ не получается, могу дать код с...

Как написать свой простейший архиватор
Можно ли сделать свой "Архиватор"? То есть запустил прогу, там кнопочка "Выбрать файл", жмем на...

Как создать на Visual C++ Win 32 простейший Архиватор
Как создать на Visual C++ Win 32 простейший Архиватор Напишите пожалуста код, или дайте книгу ...

45
Покинул форум
3187 / 1366 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
19.08.2010, 23:08 41
Author24 — интернет-сервис помощи студентам

Не по теме:

[XandeR], а вы не думали, что если не дает, значит "не можно"?


Эту тему вы уже видели?
Исходник алгоритма Хаффмана на C
0
31 / 31 / 3
Регистрация: 18.03.2009
Сообщений: 381
Записей в блоге: 2
20.08.2010, 10:08  [ТС] 42
не работает он, создает какой то файл в 130 раз больше исходного файла и все
0
NiTan
20.08.2010, 10:23
  #43

Не по теме:

[XandeR], :rofl:, нормальное такое сжатие.:D

0
31 / 31 / 3
Регистрация: 18.03.2009
Сообщений: 381
Записей в блоге: 2
20.08.2010, 15:39  [ТС] 44
да)))

нашел нормальный исходник сжатия по Хаффману, но только сжатия( что нужно знать для распаковки? вроде бы надо как то дерево сохранить и по нему распаковывать

Добавлено через 3 часа 3 минуты
мне совершенно непонятно каким образом он архивирует бинарные файлы, ведь кодирование по Хаффману основано на повторении символов, выходит сначала надо бинарный файл представляется в виде символов, или как?

Добавлено через 21 минуту
не судите строго, у меня очень малый опыт общения с бинарными файлами и их структурой
0
Покинул форум
3187 / 1366 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
20.08.2010, 15:47 45
[XandeR], откройте любой бинарный файл программой Notepad++ и вот вам символьное представление, или же специализированным HEX-редактором, в котором должно буть такое поле.
Вот простой пример в Билдере:
C++
1
2
3
4
int File=FileOpen("test.txt",fmOpenRead);  //Дескриптор файла (открыт только для чтения)
int l=FileSeek(File,0,2);          //Получаем длину файла
FileSeek(File,0,0);       //Возвращаем позицию в файле на начало
char *buffer=new char[l];   //Читаем весь файл в переменную buffer
Вот вам в buffer и будет посимвольное представление.
А доступ к символам можно получить так:
C++
1
2
if(buffer[i]=='A')   //Если байт i из нашего файла равен A
ShowMessage("Good");
Хотите больше узнать? Тогда читайте справку по Билдеру, а именно функции FileWrite, FileRead.
1
31 / 31 / 3
Регистрация: 18.03.2009
Сообщений: 381
Записей в блоге: 2
20.08.2010, 16:23  [ТС] 46
нашел отличную статью, если кому то нужно будет кодирование по Хаффману то он обязательно найдет все ответы здесь
0
20.08.2010, 16:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.08.2010, 16:23
Помогаю со студенческими работами здесь

Простейший архиватор
Нужно написать простой архиватор. Который просто архивирует и разархивирует только файлы. Как его...

Как написать архиватор.
Помогите написать архиватор, с чего начать?, какой метод архивирования лучше?

Как написать свой архиватор
Доброго времени суток. Собственно с помощью явы хочу написать простенький, может даже совершенно не...

Как написать простейший калькулятор?
я написал что то вроде этого: program calcus; uses crt; var a,b,c:integer; d:string; begin...


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

Или воспользуйтесь поиском по форуму:
46
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru