如何解析/转换早期Word文档(msword2/msword5)?
针对你提到的这类1991年之前的MS Word 2和MS Word 5格式文档(确实,大部分搜索结果关注的“旧版”都是1995年后的,找适配工具难度不小),除了LibreOffice命令行,还有几个专门针对超旧办公文档的工具值得尝试:
Catdoc
这是一款老牌的轻量命令行工具,就是为早期MS Word格式而生的——完美支持Word 2、3、4、5版本的文档文本提取。用法非常直接:catdoc your_old_word.doc > extracted_text.txt如果需要转成PDF/A,你可以把提取出的文本再配合
pandoc这类工具二次转换,灵活性很高。Libmwaw工具集
这是一个开源的专门处理老式Microsoft Word(包括Mac版和Windows版旧格式)的库,配套的命令行工具对Word 2和5的兼容性拉满。它提供了两个核心工具:mwaw2text:直接提取文档文本,命令示例:mwaw2text input.doc output.txtmwaw2pdf:直接将旧Word文档转成PDF,你可以通过额外参数配置输出为PDF/A标准,比如:mwaw2pdf --pdfa input.doc output.pdfa
旧版Microsoft Office + VBA批量脚本
如果你能搭建旧版Office环境(比如Office 4.x或Office 95,这些原生支持Word 5格式),可以写简单的VBA脚本实现批量处理。比如自动遍历文件夹里的旧文档,打开后另存为PDF/A或提取文本。原生软件对自家格式的支持肯定是最完善的,适合批量处理大量文档的场景。Apache OpenOffice命令行
和LibreOffice同宗同源,但部分旧格式的处理逻辑可能略有差异。你可以用类似的命令尝试转换:soffice --headless --convert-to pdfa:PDF/A-1b your_old_word.doc说不定能解决LibreOffice处理不了的个别特殊文档。
小提示
这些工具大多是开源的,在Linux和macOS下可以通过包管理器直接安装;Windows平台可能需要找预编译包或者自行编译。另外,处理前记得备份原始文档,毕竟超旧格式可能存在损坏风险。
内容的提问来源于stack exchange,提问作者Zanndorin




