aspose.info
UK

Формат файлу ZIM - архівний файл OpenZIM

Оновлено

Що таке файл ZIM?

Файли з розширенням .zim — це архіви, створені для зберігання вмісту Wiki офлайн. Він вважається найбільш підходящим відкритим форматом файлу для зберігання Вікіпедії на USB. Він зберігає вміст сайту в компактному форматі. Його назва походить від “Zeno IMproved”, який був попереднім форматом файлу Zeno. ZIM підтримується проектом openZIM , спонсором якого є Wikimedia CH і підтримується Фондом Wikimedia. Файли ZIM можна відкривати такими програмами, як Kiwix і ZIMReader. Проект OpenZIM реалізував формат файлу ZIM на Github за внесок спільноти OpenSource.

Специфікації формату файлу ZIM

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

Формат файлу ZIM використовує стиснення LZMA2, щоб зробити вміст компактним.

Формат файлу ZIM

Заголовок ZIM

Файл 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
articleCountціле244загальна кількість статей
clusterCountціле284загальна кількість кластерів
urlPtrPosціле328позиція списку покажчиків каталогу, впорядкованого за URL
titlePtrPosціле408позиція списку покажчиків каталогу, упорядкованого за заголовком
clusterPtrPosціле488позиція списку покажчиків кластера
mimeListPosціле568позиція списку типів MIME (також розмір заголовка)
головна сторінкаціле644головна сторінка або 0xffffffff, якщо головної сторінки немає
макет сторінкиціле684сторінка макета або 0xffffffffff, якщо сторінки макета немає
контрольна сумаPosціле728вказівник на контрольну суму md5 цього файлу без самої контрольної суми. Це завжди вказує на 16 байтів до кінця файлу.

Посилання