Ник
|
Posted: Sat Sep 23, 2006 12:26 Post subject: [Plugin request] WCX-плагин для OpenOffice.org и MSO 2007 |
|
|
Всем привет!
Понадобилось мне тут как-то сделать ряд небольших файлов (в значительной степени повторяющегося содержания) и переслать коллеге.
Сделал файлы ООо, экспортнул в MS Word, заархивировал в пакет и послал мылом.
Затем обратил внимание на суммарный размер использованных файлов ООо и размер получившегося архива файлов Ворд - архив Ворд был существенно меньше.
Для проверки заархивировал исходные файлы ООо - архив оказался значимо больше архива файлов Ворд с тем же содержанием...
Почему так - понятно: при вычислении словаря используется содержание файла - в случае файлов ООо уже готовый архив, в случае МС Ворд внутри файла "видны" одинаковые слова в Уникоде - которые и "гребутся" в словарь как одно вхождение.
Т.к. всё больше и больше софта переходит на принцип организации файла: пакет XML, архивированный ZIP (МСО 2007, ООо, SVGZ, новый формат Fiction Book явно тоже будет такой и т.п.), - то мне подумалось, что правильная модель архивации таких файлов была бы следующей:
1) Берём файлы, проверяем - архив ли это, есть ли внутри ХМЛ.
2) Разархивируем такие файлы во временную директорию, каждый в свою - со служебными именами директорий.
3) Делаем список имён исходных файлов и список соответствующих им директорий.
4) Все эти директории и файл из (3) архивируем в один архив и сжимаем.
ИМХО - будет существенно меньший архив - хотя его создание больше (что ещё непонятно - за счёт возрастания скорости построения словаря) займёт времени и потребует больше дискового пространства.
Если ещё взять как итоговый архиватор-компрессор не ZIP, а что-то типа 7-zip, то вообще будет просто песня  _________________ Xubuntu |
|