Разработка программы сжатия и восстановления файлов с помощью фиксированного блочного кода постоянного смещения
Состав работы
|
|
|
|
Необходимые программы
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Используемые компоненты среды Delphi:
1. SaveDialog, OpenDialog. Копомненты необходимые для чтения и сохранения файлов, а так же получения названия файла и его пути до него.
2. Button - компонент кнопка.
3. ListBox - компонент, состоящий из строк, хранит кодовые слова.
4. ProgressBar - компонент, необходимый для отслеживания этапов выполнения программы.
5. Label - компонент для вывода строковых данных.
Краткое описание работы приложения:
1. При нажатии кнопки Button1 “Считать для сжатия” происходит получение имени считываемого файла и пути до него. Измеряется размер файла (функция FileSize). Полностью очищаются Label.
2. При нажатии кнопки Button2 “Проверить” происходит обнуление всех необходимых для работы переменных. Запускается процесс считывания (по-байтово) и анализа сжимаемого файла, в результате которого высчитывается средняя длинна кодового слова. Она необходима для определения возможности сжатия. В зависимости от полученного результата выводится сообщение о том, что файл можно сжимать, в противном случае, что нельзя. Так же формируется массив частот повторений символов в файле, необходимый для соотнесения кодовых слов и символов в файле.
3. При нажатии Button3 “Сжать” происходит побайтовое считывание сжимаемого файла с помощью команды BlockRead. Далее происходит соотнесение считанного байта кодовому слову. Алгоритм соотнесения основан на частоте появлений символов в файле. Чем чаще данный символ встречается в файле, тем меньшей длинны ему присваивается кодовое слово. Запись нового файла производится с помощью команды BlockWrite так же по-байтово. Новому файлу присваивается новое расширение. Когда файл полностью считан, выполняется проверка на наличие оставшихся битов. Если таковые имеются, то пустое пространство забивается нулями до тех пор, пока количество битов не будет равно 8.
4. При нажатии Button4 “Считать для восстановления” происходит получение имени сжатого файла, пути до него.
5. При нажатии Button5 “Восстановить" происходит побайтового считывание файла. Алгоритм разжатия состоит из двух этапов. На первом этапе происходит считывание файла блоками размером в 1 байт. Производится запись считанных байтов в специальную переменную. Когда длина переменной составляет 16 символов или более, начинается анализ считанной информации. Производится проверка на соответствие кодовым словам и последующая запись полученных значений в новый файл. На втором этапе производится проверка на остаток и удаление лишних данных (случай, когда было выполнено дополнение нулями при сжатии).
1. SaveDialog, OpenDialog. Копомненты необходимые для чтения и сохранения файлов, а так же получения названия файла и его пути до него.
2. Button - компонент кнопка.
3. ListBox - компонент, состоящий из строк, хранит кодовые слова.
4. ProgressBar - компонент, необходимый для отслеживания этапов выполнения программы.
5. Label - компонент для вывода строковых данных.
Краткое описание работы приложения:
1. При нажатии кнопки Button1 “Считать для сжатия” происходит получение имени считываемого файла и пути до него. Измеряется размер файла (функция FileSize). Полностью очищаются Label.
2. При нажатии кнопки Button2 “Проверить” происходит обнуление всех необходимых для работы переменных. Запускается процесс считывания (по-байтово) и анализа сжимаемого файла, в результате которого высчитывается средняя длинна кодового слова. Она необходима для определения возможности сжатия. В зависимости от полученного результата выводится сообщение о том, что файл можно сжимать, в противном случае, что нельзя. Так же формируется массив частот повторений символов в файле, необходимый для соотнесения кодовых слов и символов в файле.
3. При нажатии Button3 “Сжать” происходит побайтовое считывание сжимаемого файла с помощью команды BlockRead. Далее происходит соотнесение считанного байта кодовому слову. Алгоритм соотнесения основан на частоте появлений символов в файле. Чем чаще данный символ встречается в файле, тем меньшей длинны ему присваивается кодовое слово. Запись нового файла производится с помощью команды BlockWrite так же по-байтово. Новому файлу присваивается новое расширение. Когда файл полностью считан, выполняется проверка на наличие оставшихся битов. Если таковые имеются, то пустое пространство забивается нулями до тех пор, пока количество битов не будет равно 8.
4. При нажатии Button4 “Считать для восстановления” происходит получение имени сжатого файла, пути до него.
5. При нажатии Button5 “Восстановить" происходит побайтового считывание файла. Алгоритм разжатия состоит из двух этапов. На первом этапе происходит считывание файла блоками размером в 1 байт. Производится запись считанных байтов в специальную переменную. Когда длина переменной составляет 16 символов или более, начинается анализ считанной информации. Производится проверка на соответствие кодовым словам и последующая запись полученных значений в новый файл. На втором этапе производится проверка на остаток и удаление лишних данных (случай, когда было выполнено дополнение нулями при сжатии).
Другие работы
Христианское понимание любви
Slolka
: 29 сентября 2013
Любовь - основа христианской жизни, основа Спасения.
Любовь - душа мировой жизни. Без любви и ум мертвит и даже праведность устрашает. Настоящая христианская праведность в единении любви и истины по слову Псалмопевца: Милость и истина сретятся, правда и мир облобызаются. В этом единении любовь направляется истиной, а истина раскрывается в любви. Любовь к падшему творению подвигла Бога Отца спасти мир, во зле лежащий: Ибо так возлюбил Бог мир, что отдал Сына Своего Единородного, дабы всякий, вер
10 руб.
Съемник универсальный для ремонта сельхозтехники (конструкторская часть дипломного проекта)
AgroDiplom
: 10 сентября 2018
СОДЕРЖАНИЕ
3 КОНСТРУКТОРСКАЯ ЧАСТЬ
3.1 Описание конструкторской предлагаемого съемника
3.2 Конструкторский расчет
3.1 Описание конструкции предлагаемого съемника
Основной и трудоемкой операцией по ремонту является разборка. Для разборки узлов агрегатов основным условием является аккуратная разборка, без применения ударного инструмента.
Основные разборочные работы по водяному наосу является снятие с вала крыльчатки и шкива.
В дипломном проекте предлагается конструкция
999 руб.
Внешняя политика Советского государства в канун и в годы второй мировой войны
Lokard
: 20 марта 2013
1. Основные направления внешней политики Советского государства в 20-30 годы.
2. Мюнхенский сговор и позиция СССР.
3. Советские инициативы по предотвращению нацистской агрессии в Европе.
4. Содержание советско-германского договора о ненападении.
5. Причины и характер второй мировой войны.
Эта тема интерессна сама по-себе,как фактор становления Советского государства.Ведь известно,что от умело проведённой политики зависит многое:и курс ведения внутренней политики,а также внешней, от уме
5 руб.
Некрасов Б.Б. Задачник по гидравлике, гидромашинам и гидроприводу Задача 1.40
Z24
: 9 декабря 2025
Определить абсолютное давление на поверхности жидкости в сосуде и высоту h, если атмосферное давление соответствует ha=740 мм рт. ст., поддерживающая сила F=10 H, вес сосуда G=2 H, а его диаметр d=60 мм. Толщиной стенки сосуда пренебречь. Плотность жидкости ρ=1000 кг/м³.
120 руб.