Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2010, 14:54   #1
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию Паковка файлов многие → один

Лежит у меня в директории около 100 файлов моего формата (ftf). Мне не нравится такое количество файлов, потому хочу замутить один файл - pack. Т.к. файлы бинарные, отделять их внутри каким-то символом не получится. Как лучше реализовать сие? Создавать "таблицу" в начале pack`а?

P.S. Файлы примерно 1-2 кб, "рыхлые" - много нулей внутри. Желателен очень быстрый алгоритм.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 02.08.2010, 15:06   #2
igh0st
Форумчанин
 
Аватар для igh0st
 
Регистрация: 05.07.2010
Сообщений: 136
По умолчанию

Цитата:
Сообщение от Alex Cones Посмотреть сообщение
Лежит у меня в директории около 100 файлов моего формата (ftf). Мне не нравится такое количество файлов, потому хочу замутить один файл - pack. Т.к. файлы бинарные, отделять их внутри каким-то символом не получится. Как лучше реализовать сие? Создавать "таблицу" в начале pack`а?

P.S. Файлы примерно 1-2 кб, "рыхлые" - много нулей внутри. Желателен очень быстрый алгоритм.
Можно использовать базу данных - ничего не надо изобретать с разделителями, просто ложить файлы в blob + еще и сжатие можно задать средствами БД.
igh0st вне форума Ответить с цитированием
Старый 02.08.2010, 15:13   #3
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

1) База данных много весит.
2) Её модули много весят.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 02.08.2010, 15:23   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

А обычный zip?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.08.2010, 15:23   #5
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Запаковать в zip и переименовать в .pack (привет от Quake).
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 02.08.2010, 15:26   #6
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Это, конечно, вариант. Но тогда будет достаточно палевно держать UnZip в папке с программой.

А внутрь его запихивать будет немного расточительно:
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ

Последний раз редактировалось Alex Cones; 02.08.2010 в 15:28.
Alex Cones вне форума Ответить с цитированием
Старый 02.08.2010, 15:32   #7
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Есть компоненты для зипов. Варианта 3:
а) искать для Лазаруса
б) переточить для Лазаруса
в) выдернуть код запаковки/распаковки из компонента
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.08.2010, 15:33   #8
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

можно ДЛЛ юзать для зипа.
а в каком смысле палевно?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 02.08.2010, 15:34   #9
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
можно ДЛЛ юзать для зипа.
а в каком смысле палевно?
И закинуть ее в папку Виндовс. И никакого палева
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.08.2010, 15:38   #10
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

с этим лажа в том что выше ХРюшки.

если палево это что у нас именно зип, так заголовок файла никто не отменял.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Склеивание таблиц из разных файлов в один zenner Microsoft Office Excel 16 04.05.2011 23:11
Сборка нескольких файлов в один Gamst Помощь студентам 4 02.06.2010 20:19
Слияние двух файлов в один hen Общие вопросы C/C++ 1 07.10.2009 22:59
Собирание файлов в один polcta Общие вопросы C/C++ 0 01.10.2009 14:52
Копирование двух файлов в один JRcoker Общие вопросы Delphi 5 18.07.2008 21:37