aspose.info
BG

ZIM файлов формат - OpenZIM архивен файл

Обновено

Какво е ZIM файл?

Файловете с разширение .zim са архиви, създадени за съхраняване на Wiki съдържание офлайн. Счита се за най-подходящия отворен файлов формат за съхранение на Wikipedia на USB. Той съхранява съдържанието на сайта в компактен формат. Името му идва от “Zeno IMproved”, който беше по-ранният файлов формат на Zeno. ZIM се поддържа от openZIM проект, който е спонсориран от Wikimedia CH и се поддържа от Wikimedia Foundation. ZIM файловете могат да се отварят от приложения като Kiwix и ZIMReader. Проектът OpenZIM е домакин на внедряването на файловия формат ZIM в Github за принос от общността на OpenSource.

Спецификации на файловия формат ZIM

Файловият формат ZIM е разработен върху файловия формат на Zeno и не е обратно съвместим. Спецификациите на формата на файловия формат ZIM са достъпни онлайн от openZIM за справка на разработчиците. OpenZIM предостави реализация с отворен код на C++, LibZim, за четене и писане на ZIM файлове.

Файловият формат ZIM използва LZMA2 компресия, за да направи съдържанието компактно.

ZIM файлов формат

ZIM Header

ZIM файл започва със заглавка, която е на отместване 0. Всички съставни части са базирани на little-endian и всички цели числа са цели числа без знак, т.е. uint_16, uint_32, uint_64.

Име на полеТипОтместванеДължинаОписание
magicNumberцяло число04Магическото число за разпознаване на файловия формат трябва да бъде 72173914 (0x44D495A)
majorVersionцяло число42Основна версия на файловия формат ZIM (5 или 6)
minorVersionцяло число62Малка версия на файловия формат ZIM
uuidцяло число816уникален идентификатор на този zim файл
статияБройцяло число244общ брой статии
clusterCountцяло число284общ брой клъстери
urlPtrPosцяло число328позиция на списъка с указатели на директория, подреден по URL
titlePtrPosцяло число408позиция на списъка с указатели на директория, подреден по Title
clusterPtrPosцяло число488позиция на списъка с указатели на клъстера
mimeListPosцяло число568позиция на списъка с типове MIME (също размер на заглавката)
главна страницацяло число644главна страница или 0xffffffff, ако няма главна страница
layoutPageцяло число684страница с оформление или 0xffffffffff, ако няма страница с оформление
контролна сумаПозцяло число728указател към md5checksum на този файл без самата контролна сума. Това винаги сочи 16 байта преди края на файла.

Препратки