# 小语种人求助（如何导出mdx的数据）

**URL:** <https://forum.freemdict.com/t/topic/22865>\
**Category:** 技术交流与词典编修\
**Tags:** mdx, 求助\
**Created:** [2023 年8 月 21 日 01:11 UTC](https://forum.freemdict.com/t/topic/22865 "2023-08-21T01:11:56Z")\
**Posts on this page:** 16\
**Page:** 2

<div class="post-metadata">

作者： ![last\_idol](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/last_idol/32/2205_2.png) [@last\_idol](https://forum.freemdict.com/u/last_idol)\
发布日期： [2024 年1 月 13 日 15:55 UTC](https://forum.freemdict.com/t/topic/22865/21 "2024-01-13T15:55:29Z")

</div>

确实，我试了下大文件的导出还是有问题。我只看了大小，之前导出的图片只有几十M，现在是1.2G，我以为导出完整了，没注意到图片打不开，抱歉误导你了。。

---

<div class="post-metadata">

作者： ![last\_idol](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/last_idol/32/2205_2.png) [@last\_idol](https://forum.freemdict.com/u/last_idol)\
发布日期： [2024 年1 月 13 日 16:08 UTC](https://forum.freemdict.com/t/topic/22865/22 "2024-01-13T16:08:20Z")

</div>

检查了下大部份数据是导出了，但是中间部份记录块解析失败，导致文件后续分割错误。尝试修复了两张，001256.png和001257.png，还是要等原作者来修。

 ![001256-أطر](https://forumcdn.freemdict.com/uploads/default/original/3X/0/1/015127f4fe1b1c30a39ef10b594b6dd067ca43f3.png)

 ![001257-أطرة](https://forumcdn.freemdict.com/uploads/default/original/3X/f/a/fa0f7707b969301650fb3806439d912224af5fa6.png)

---

<div class="post-metadata">

作者： ![tyl-123](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/t/6a8cbe/32.png) [@tyl-123](https://forum.freemdict.com/u/tyl-123)\
发布日期： [2024 年6 月 3 日 08:28 UTC](https://forum.freemdict.com/t/topic/22865/23 "2024-06-03T08:28:00Z")

</div>

问题解决了吗 大佬

---

<div class="post-metadata">

作者： ![last\_idol](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/last_idol/32/2205_2.png) [@last\_idol](https://forum.freemdict.com/u/last_idol)\
发布日期： [2024 年6 月 3 日 09:38 UTC](https://forum.freemdict.com/t/topic/22865/24 "2024-06-03T09:38:58Z")

</div>

仍然有问题。

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2024 年6 月 3 日 09:41 UTC](https://forum.freemdict.com/t/topic/22865/25 "2024-06-03T09:41:12Z")

</div>

卖词典的我联系过了，没给答复。用mdict查询分界点的前一个词闪退，后方的图片是无法导出但是正常显示。不知道为什么原作者的打包会出问题。

---

<div class="post-metadata">

作者： ![tyl-123](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/t/6a8cbe/32.png) [@tyl-123](https://forum.freemdict.com/u/tyl-123)\
发布日期： [2024 年6 月 3 日 09:48 UTC](https://forum.freemdict.com/t/topic/22865/27 "2024-06-03T09:48:11Z")

</div>

大佬 能提取吗 可以给报酬

---

<div class="post-metadata">

作者： ![last\_idol](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/last_idol/32/2205_2.png) [@last\_idol](https://forum.freemdict.com/u/last_idol)\
发布日期： [2024 年6 月 3 日 09:51 UTC](https://forum.freemdict.com/t/topic/22865/28 "2024-06-03T09:51:14Z")

</div>

我没这个能力，你联系原作者就行。

---

<div class="post-metadata">

作者： ![tyl-123](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/t/6a8cbe/32.png) [@tyl-123](https://forum.freemdict.com/u/tyl-123)\
发布日期： [2024 年6 月 3 日 09:51 UTC](https://forum.freemdict.com/t/topic/22865/29 "2024-06-03T09:51:46Z")

</div>

原作者是谁啊 有途径吗

---

<div class="post-metadata">

作者： ![tyl-123](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/t/6a8cbe/32.png) [@tyl-123](https://forum.freemdict.com/u/tyl-123)\
发布日期： [2024 年6 月 3 日 09:58 UTC](https://forum.freemdict.com/t/topic/22865/31 "2024-06-03T09:58:16Z")

</div>

谢谢你 😄 😃 😃啊

---

<div class="post-metadata">

作者： ![amob](https://forumcdn.freemdict.com/user_avatar/forum.freemdict.com/amob/32/14630_2.png) [@amob](https://forum.freemdict.com/u/amob)\
发布日期： [2025 年5 月 11 日 10:17 UTC](https://forum.freemdict.com/t/topic/22865/32 "2025-05-11T10:17:08Z")

</div>

读了遍mdict-analysis源码，基本搞明白了，代码个人认为没问题。其实中间部分有十五个记录数据块出错了（因此还有十五张图无法提取），跳过这些错误的记录数据块就行了。

错误在于记录数据块（Record Data Block）和记录索引块（Record Index Block）记录的文件大小不符，理应是一致的。

鬼知道这作者打包的时候怎么出错的。也有种可能是莫名奇妙地少了或者被故意删了几个字节。mdd的结构是紧密排列的，一点更改都能导致后方全局出错，所以拿mdict-analysis只能正常导出前面的少部分图片。因为mdict-analysis没有容错机制，把1186数据块开始，就没有跳过它而是作为一部分。

 ![image](https://forumcdn.freemdict.com/uploads/default/original/3X/1/5/1561b936e855017ff6e02d701fac6c802ccf367c.png)

---

<div class="post-metadata">

作者： ![wnabc123](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/w/9d8465/32.png) [@wnabc123](https://forum.freemdict.com/u/wnabc123)\
发布日期： [2025 年11 月 19 日 11:58 UTC](https://forum.freemdict.com/t/topic/22865/33 "2025-11-19T11:58:34Z")

</div>

挖个坟，最近也研究了下这个 mdd。这个文件总共 6 万多个记录块，我扫了一遍，发现有问题的块差不多 200 个。这些块的头 16 字节有问题，没法正常读。

但最关键的是，这些块没有像 mdict v3 格式常见的那样加密。跳过那 16 个字节的错误块头，后面紧跟着就是 78 9C，也就是标准的 zlib 数据流。

所以可以直接解压。解压后发现，在数据流的末尾被提前截断了。。感觉是打包工具的 bug，写坏了块头，数据也没写完整。

---

<div class="post-metadata">

作者： ![wnabc123](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/w/9d8465/32.png) [@wnabc123](https://forum.freemdict.com/u/wnabc123)\
发布日期： [2025 年11 月 19 日 13:50 UTC](https://forum.freemdict.com/t/topic/22865/34 "2025-11-19T13:50:41Z")

</div>

好在没加密，只是截断。大部分图片的问题是，数据流在写入 PNG 最后的 IEND 数据块时被截断了，导致 IEND 块不完整。这个只要补全就行了。

剩下 7 张情况复杂点，因为截断点在 IDAT（图像数据）块内部：

009482-جلع.png: 数据流在 IDAT 块的 CRC 校验码那里被截断了，导致校验码和后面的 IEND 块都没了。根据前面的图像数据，重新计算 CRC 并补上 IEND 即可。

038488-معفى.png, 054750-مذاع.png, 043712-فاقم.png, 044393-فول.png: 这 4 个是 zlib 数据流本身在结尾的 Adler-32 校验码那里被截断了。同样根据已有的数据重算 Adler-32，再补上 PNG 需要的 CRC 和 IEND。

004720-تبقل.png, 044388-متفوق.png: 这两个是压缩数据流的本体就缺了最后 2 个字节。我写了个脚本把 65536 种可能都试了一遍。有意思的是，所有能成功解压的有效组合，还原出的像素数据都完全一致。随便选一组补上，再依次补全 zlib 的 Adler-32 校验、PNG 的 CRC 校验和 IEND 块，这张图就无损恢复了。

结论就是，所有图片数据其实都在，都能完美修复。

---

<div class="post-metadata">

作者： ![wynick27](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/w/958977/32.png) [@wynick27](https://forum.freemdict.com/u/wynick27)\
发布日期： [2025 年11 月 19 日 14:11 UTC](https://forum.freemdict.com/t/topic/22865/35 "2025-11-19T14:11:33Z")

</div>

能这么逐个分析错误原因太厉害了，不是对压缩数据格式和mdd，png结构都很了解做不到的。

---

<div class="post-metadata">

作者： ![mixivivo](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/m/8491ac/32.png) [@mixivivo](https://forum.freemdict.com/u/mixivivo)\
发布日期： [2025 年11 月 19 日 14:56 UTC](https://forum.freemdict.com/t/topic/22865/36 "2025-11-19T14:56:05Z")

</div>

《阿拉伯汉语词典》现在可以直接把它ocr了，识别率貌似还不错（阅读顺序有点混乱），不过我自己没学过阿拉伯文，所以没有贸然从事。

 ![350](https://forumcdn.freemdict.com/uploads/default/original/3X/0/5/0538531c04f19631128a430f58ce44f68c60d2eb.jpeg)

> 这是一个阿拉伯语-汉语词典的页面。根据您的要求，我将分别提取右栏和左栏的文字内容。
> 
> **页面页眉：**  
> 右：دبق （词根）  
> 中：350 （页码）  
> 左：دحج （词根）
> 
> * * *
> 
> ### **右栏 (Right Column)**
> 
> 阅读顺序：阿拉伯语在右侧，对应的中文释义在左侧。
> 
> **دَبَقَ** - دَبْقاً الطّيرَ: صَادَه بالدِبْق  
> (用鸟胶) 粘鸟
> 
> **دَبِقَ** - دَبَقاً به: لِصِقَ  
> 粘住，粘着，依附
> 
> **دَبَّقَه** : تَلَزَّجَه  
> 粘，粘着，粘住
> 
> — الطّيرَ  
> 用(鸟胶)捕鸟
> 
> — على …  
> 取得，弄到，找到
> 
> **تَدَبَّقَ** بالعَرَقِ  
> (由于出汗而) 粘住
> 
> — الشيءُ  
> (粘在胶上) 被捕，被捉
> 
> — بالشيء  
> 迷恋，恋慕
> 
> **انْدَبَقَ**  
> 粘附，贴上
> 
> **دِبْق** / **دَابُوق** / **دَبُوقَاء** : مُخَّيط لصيد العَصَافِير (م)  
> 粘鸟胶
> 
> **دَبِق** : لَزِج  
> 粘的，有粘性的
> 
> **دَبَكَ** - دَبْكاً ودَبَّكَ  
> 跳踏歌舞
> 
> **دَبْكَة**  
> 硬物落地声，(拟音语) 咚咚
> 
> — / رَقْصُ الـ  
> 踏歌舞 (黎巴嫩民间舞蹈)
> 
> **دَبَلَ** - دَبْلاً ودُبُولاً الأرضَ: سَمَّدَها  
> 施肥
> 
> **دَبَّلَتْه** الدُّبُولُ  
> 灾难降临
> 
> **دَبْل** ج دُبُول: وَرَم في غُدَّة لِمْفاوِيَّة  
> [医] 瘰疬，[医] 核疾
> 
> **طَاعُونٌ دَبْلِيّ** : طَاعُون بَشَرِيّ  
> [医] 腹股沟淋巴结炎；鼠疫，淋巴腺鼠疫
> 
> **دَبْلَة** ج دُبَل ودُبْل: كُتْلة  
> 一块，一团
> 
> **دَبْلَة** ج دِبَل (م) ودِبْلَة ج دِبَل (س): فَتْحَة / خَاتِم بِلاَ فَصّ كَأَنه حَلْقَة  
> 指环，戒指
> 
> —: سَاعَة الجَيْب (م)  
> (挂表的) 表环
> 
> **دَبْلاَن** / **دَبُولاَن**  
> 白印花布，衬衣料，粗制的竹布
> 
> **دُبَال** : سَمَاد  
> 肥料
> 
> **دُبَّان** (س): ذُبَّان  
> 苍蝇
> 
> **دِبْلُوم** diploma / **دِبْلُومَة** ج دِبْلُومَات  
> 执照，许可证；文凭，毕业证书
> 
> * * *
> 
> ### **左栏 (Left Column)**
> 
> 此栏接续右栏内容
> 
> **دِبْلُومَاسِي** / **دِبِيلُومَاسِي** ج دَبَالِسَة / **دِبْلُومَاتِيّ** (diplomat)  
> 外交官，外交家；外交的，有外交手腕的，外国使节的
> 
> **دِبْلُومَاسِيَّة**  
> 外交，外交手腕、策略、机巧
> 
> **دَبَى** الواحدة دَبَاة: حُورِيَّات الجَرَاد  
> 蝗蝻
> 
> **دَثَرَ** - دُثُورًا الرسمُ وانْدَثَر: امَّحَى  
> 痕迹消灭，被擦去，拭去，抹去，揩去
> 
> **دَثَّرَه** : أَهْلَكَه  
> 使消灭，抹去，使湮没
> 
> — ه: غَطَّاه  
> 给盖上毯子
> 
> **تَدَثَّر** بكذا  
> 蒙上，盖上，包上，围上
> 
> **دُثُور** / **اِنْدِثَار** : اِمِّحَاء  
> 消逝，消灭，湮没
> 
> الـ والتَجَدُّد (في علم الأحياء) / الأَيْض  
> [生] 新陈代谢，代谢
> 
> **دَثْر** ج دُثُور  
> 财富，财产，资源
> 
> **دِثَار** : غِطَاء أو مِعْطَف  
> 毛毯；被子；外衣，外套，长袍
> 
> **داثِر** ج دَوَاثِر: هالك  
> 消失的，看不见的
> 
> **دَجَّجَه** وتَدَجَّجَ بالسلاح  
> 全副武装，全身披挂
> 
> **دَجّ** : سُمُنّ مُغَرِّد  
> [动] 画眉
> 
> **دُجَّة** : ظُلْمَة شَدِيدة  
> 极暗，漆黑
> 
> **دَجَاج** ودَجَاج ودِجَاج ج دُجُج الواحدة دَجَاجَة ج دَجَاجَات: طُيُور داجِنَة  
> 鸡
> 
> — فِرْعَوْن أو الوادِي أو السُّودَان (س): غِرْغِر  
> 珠鸡
> 
> — الهِنْد أو الحَبَش (س)  
> 火鸡，吐绶鸡
> 
> **دَجَاجَة** ج دَجَاجَات: فَرْخَة (م)  
> 母鸡
> 
> **كَوْكَبَة الـ**  
> [天] 天鹅座
> 
> **دَجَاجِيّ** : مختصّ بالدَجَاج  
> 似家禽的
> 
> —: بائِعُ الطُيُورِ الدَاجِنَة / فَرَاْرجِي (م)  
> 卖鸡鸭的
> 
> **دَيْجُوج** ودَجُوجِيّ ج دَيَاجِيجُ: ليل مُظْلِم  
> 黑夜
> 
> **مُدَجَّج** بالسلاح  
> 全副武装，全身披挂的

---

<div class="post-metadata">

作者： ![wynick27](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/w/958977/32.png) [@wynick27](https://forum.freemdict.com/u/wynick27)\
发布日期： [2025 年11 月 19 日 15:15 UTC](https://forum.freemdict.com/t/topic/22865/37 "2025-11-19T15:15:34Z")

</div>

好像不是这本，应该是《高级阿汉词典》  
和之前的图能对上，但这中文阅读起来太难受了

 ![image](https://forumcdn.freemdict.com/uploads/default/original/3X/1/5/150862208b37bb01aae456dccc75601b8ebd2221.jpeg)

---

<div class="post-metadata">

作者： ![mixivivo](https://forumcdn.freemdict.com/letter_avatar_proxy/v4/letter/m/8491ac/32.png) [@mixivivo](https://forum.freemdict.com/u/mixivivo)\
发布日期： [2025 年11 月 19 日 15:20 UTC](https://forum.freemdict.com/t/topic/22865/38 "2025-11-19T15:20:32Z")

</div>

我没具体查，那就是想当然搞错了。我这里还有本1966年版的《阿拉伯汉语词典》，汉字也是这么排版的。

 ![000001](https://forumcdn.freemdict.com/uploads/default/original/3X/d/6/d60e506d1ed8d2e8ee391fede6b05aadbaa02903.jpeg)

[上一页](https://forum.freemdict.com/t/topic/22865.md?page=1)
