mdict 中文文档 下载 App

mdx 版本兼容性 — 新旧 MDict 打开词典格式差异

为什么有版本兼容问题

MDict 从 2007 年发布至今经历了多次格式升级。目前主流的 mdx 有两个版本:

MDXBuilder 4.0 输出的词典在内部结构上做了几处不向后兼容的改动,因此:

哪些 MDict 版本能打开 mdx 2.x

MDict 版本能读 mdx 1.x能读 mdx 2.x备注
PC 1.3 RC4✓✗ 或部分词条丢失典型症状:词典能显示封面但内容是空的
PC 2.0.12✓✓(完整)当前 PC 版推荐
Android v2.2 及更早✓✗ 或图片/发音丢失不支持 mdd 2.0 分卷格式
Android v2.3.7✓✓(基本完整)官方停更的最后一个版本
iOS App Store 版✓✓(基本完整)但发音 mdd 支持有缺陷
DictTango(全平台)✓✓(完整,含 mdd 分卷)社区推荐的替代阅读器

一句话:要用 MDXBuilder 4.0 制作的新词典(标注"精装版/重生版/美化版"的),必须 MDict PC 2.0 或 Android 2.3.7+。老版本建议直接升级。

怎么判断词典是什么格式

方法一:看论坛帖子

FreeMdict Forum 上 2018 年后发布的词典(或标注"MDXBuilder 4.0"、"重生版"、"精装版"的),几乎都是 mdx 2.x 格式。发帖人通常会在帖子开头注明"需要 MDict 2.0 以上版本"——如果看到这个提示,就知道是 2.x 格式。

方法二:用 MDXBuilder 或 mdtt 查看

MDXBuilder 打开词典后能看到格式版本号。或者用 mdtt 命令行:

mdtt view 牛津高阶.mdx

输出里会显示 Version: 2.0 或类似字样。如果是 2.0,就是 mdx 2.x 格式。

方法三:直接试

在你的 MDict 版本里直接打开——如果词典封面能显示但词条内容全是空白,大概率是 mdx 2.x + 老 MDict 的组合。

常见兼容故障

故障一:PC 1.3 RC4 打开 mdx 2.x 词典,词条内容空白

1.3 RC4 不识别 mdx 2.x 的压缩索引格式——它看到了封面和目录结构,但内部的词条正文是用 2.x 特有的方式压缩存储的,1.3 解析不了。解决办法只有一个:升级到 PC 2.0.12。

故障二:Android 老版本打开 mdd 2.0 分卷格式词典,发音和图片不显示

mdd 2.0 格式(.1.mdd、.2.mdd)的分卷机制是 MDXBuilder 4.0 新引入的。Android v2.2 及更早版本只认识单个 .mdd 文件,分卷的都识别不出来——词典正文能看(因为 mdx 部分可能还是兼容的),但发音和图片全丢失。

解决办法:升级 Android 版到 v2.3.7,或换 DictTango。

故障三:自制词典(mtxt + MDXBuilder 3.0)在新 MDict 上完全正常

mdx 1.x → 2.x 的向后兼容做得很好,新 MDict 读取旧格式词典不会有问题。所以如果你用的是 MDXBuilder 3.0 输出的老格式词典,完全不用担心——升级 MDict 不会让旧词典变坏。

故障四:DictTango 打开老词典比 MDict 1.3 更快

DictTango 使用完全不同的 mdx 读取引擎(不是 MDict 那套),对新旧格式的支持更统一。如果你同时有老格式和新格式的词典、或者经常遇到 MDict 版本兼容问题,DictTango 是一个统一解决方案。

升级建议

你的场景推荐操作
装的是 PC 1.3 RC4,想用 FreeMdict 论坛 2020 年后的新词典直接装 2.0.12,两个版本可以共存
装的是 Android v2.2升级到 v2.3.7 或换 DictTango
自制词典用 MDXBuilder 3.0继续用就行,新 MDict 向后兼容
自制词典用 MDXBuilder 4.0记得在帖子里注明"需要 MDict 2.0+"
iOS 用户原版 MDict iOS 长期停更,建议换 DictTango for iOS