案例

打不开的 Word 或 Excel 文件

Word 文档或 Excel 工作簿其实是一个由多个部件组成的小压缩包。部件清单丢失时,程序就放弃打开,尽管文字和单元格往往还在。

木桌上一本打开的线圈笔记本,有几页被撕掉了
生成的插图

出问题的那一刻

Word 提示文档已损坏并提出恢复内容,或者 Excel 提示在工作簿中发现问题。这类文件常常来自邮件附件、中断的下载,或过早拔出的 U 盘。

为什么 Word 和 Excel 打不开

.docx 或 .xlsx 文件是一个 ZIP 压缩包:正文、样式和每张工作表各有一个小的 XML 部件,打包在一起。文件最末尾是中央目录,列出每个部件及其起始位置。被截断的文件最先丢失的就是这份清单,而 Word 或 Excel 不会再往别处找。

文件会经历什么

工具根据每个部件自身的头部读取它,保留能够完整解压的部件,并为它们写出新的中央目录。损坏的部件会被舍弃而不是原样交出;如果该部件存放的是正文或某张工作表,那部分就无法恢复。

您最终得到什么

得到一个能打开的 .docx 或 .xlsx,里面是已到达的正文和单元格。部件未能完整到达的图片、样式或工作表可能缺失。不会重新输入或重新计算任何内容:新文件里只有旧文件中原有的东西。

根据我们的测试,哪些情况有效

被截断的 Excel 工作簿在我们测试的所有案例中都能重建,数据错位的也一样;中间区域损坏的大多数也可以。Word 文档在区域损坏或数据错位时每次都能重建,被截断的大多数也能。开头丢失的 Word 文档则不行。零散错误时,两种文件各有大约一半无法恢复。完整表格见文件类型指南。

开始之前

请保留原文件。先试试 Word 或 Excel 自带的“打开并修复”:不花钱,有时就够了。如果文件来自邮件或共享文件夹,从那里重新复制一份就能拿到全部内容。

检查新文件

把文档从头读一遍,或者打开工作簿的每一张工作表。把最重要的数字与其他来源核对,并在编辑前另存为新文件名。

常见问题

Excel 里的公式会保留吗?

只要工作表的部件完整到达,就会保留:公式和数值原样复制。

旧的 .doc 和 .xls 文件也适用吗?

不适用。本指南针对 .docx 和 .xlsx,即 Office 自 2007 年起默认保存的格式。旧的 .doc 和 .xls 结构不同。

文件会被上传到任何地方吗?

不会。文件在您设备上的浏览器中读取,绝不会离开您的设备。

来源

本指南参考的文档。

  1. Ecma International:ECMA-376(Office Open XML)
  2. PKWARE:ZIP 格式规范(APPNOTE)