aspose.info
VI

Định dạng tệp ZIM - Tệp lưu trữ OpenZIM

Cập nhật

Tệp ZIM là gì?

Các tệp có phần mở rộng .zim là các tệp lưu trữ được tạo để lưu trữ nội dung Wiki ngoại tuyến. Nó được coi là định dạng tệp mở phù hợp nhất để lưu trữ Wikipedia trên USB. Nó lưu trữ nội dung trang web ở định dạng nhỏ gọn. Tên của nó xuất phát từ “Zeno IMproved”, là định dạng tệp Zeno trước đó. ZIM được duy trì bởi dự án openZIM được Wikimedia CH tài trợ và được Wikimedia Foundation hỗ trợ. Các tệp ZIM có thể được mở bằng các ứng dụng như Kiwix và ZIMReader. Dự án OpenZIM đã tổ chức triển khai định dạng tệp ZIM trên Github để nhận đóng góp từ cộng đồng OpenSource.

Thông số kỹ thuật định dạng tệp ZIM

Định dạng tệp ZIM được phát triển dựa trên định dạng tệp Zeno và không tương thích ngược. Thông số định dạng của định dạng tệp ZIM có sẵn trực tuyến của openZIM để nhà phát triển tham khảo. OpenZIM đã cung cấp triển khai mã nguồn mở C++, LibZim, để đọc và ghi các tệp ZIM.

Định dạng tệp ZIM sử dụng nén LZMA2 để làm cho nội dung nhỏ gọn.

Định dạng tệp ZIM

Tiêu đề ZIM

Tệp ZIM bắt đầu bằng tiêu đề có độ lệch 0. Tất cả các thành phần đều dựa trên little-endian và tất cả các số nguyên đều là số nguyên không dấu, tức là uint_16, uint_32, uint_64.

Tên trườngLoạiBù đắpChiều dàiMô tả
magicNumbersố nguyên04Số ma thuật để nhận dạng định dạng tệp, phải là 72173914 (0x44D495A)
majorVersionsố nguyên42Phiên bản chính của định dạng tệp ZIM (5 hoặc 6)
minorVersionsố nguyên62Phiên bản nhỏ của định dạng tệp ZIM
uuidsố nguyên816id duy nhất của tệp zim này
articleCountsố nguyên244tổng số bài viết
clusterCountsố nguyên284tổng số cụm
urlPtrPossố nguyên328vị trí của danh sách con trỏ thư mục được sắp xếp theo URL
titlePtrPossố nguyên408vị trí của danh sách con trỏ thư mục được sắp xếp theo Title
cụmPtrPossố nguyên488vị trí của danh sách con trỏ cụm
mimeListPossố nguyên568vị trí của danh sách loại MIME (cũng như kích thước tiêu đề)
trang chínhsố nguyên644trang chính hoặc 0xffffffff nếu không có trang chính
bố cụcsố nguyên684trang bố cục hoặc 0xffffffffff nếu không có trang bố cục
checksumPossố nguyên728con trỏ tới md5checksum của tệp này mà không có tổng kiểm tra. Điểm này luôn luôn là 16 byte trước khi kết thúc tệp.

Người giới thiệu