![分析](https://linux22.com/image/1584909/%E5%88%86%E6%9E%90.png)
因此,我损坏了一个 docx 文件,我尝试修复它的所有方法都失败了,临时文件也消失了。我的备份是在我对文件进行大量添加之前的几天。
我找到了一种仅获取文本的方法,即使用 7-Zip 提取文本,并在线删除 HTML 标签。
我可以这样做,但如果有人知道更好的方法来恢复损坏的文件,那将非常有帮助
https://drive.google.com/open?id=1YUUqHosPzU9fZrB7H9NZf3J76rHDT_UT [档案]
答案1
分析
我查看了您的 DOCX 文件,发现该文件的最后一次保存被中断,因此实际上缺少数据。以下是我尝试使用以下方法提取 DOCX 文件(正如您已经发现的那样,它是一个伪装的 ZIP 文件)的最后十行zip -FF Bio\ Exam.docx --out Bio\ Exam.zip
:
copying: customXml/_rels/item1.xml.rels (174 bytes)
copying: [Content_Types].xml (1005 bytes)
copying: word/media/image184.png (4149718 bytes)
copying: word/media/image181.png (777760 bytes)
copying: word/media/image179.png (135904 bytes)
copying: word/media/image178.png (331403 bytes)
copying: word/media/image177.png (1040822 bytes)
copying: word/media/image149.png
zip warning: no end of stream entry found: word/media/image149.png
zip warning: rewinding and scanning for later entries
word/media/image149.png
是一个不完整的文件,由于 DOCX 文件的意外结束而被截断,其后的所有内容都丢失了,包括最后的中心目录,这里以紫色显示:
无法确定缺少了哪些文件,因为从未写入 ZIP 存档末尾的文件列表(中央目录)。
恢复
了解这些事实后,恢复的最佳方法是将损坏的存档/文档中的文件写入过时的备份副本中。希望这会变成一个连贯的 DOCX 文件。
为了清楚起见,我将尝试以下步骤:
- 假设您的备份文档名为
backup.docx
,请复制一份并命名reconstructed.zip
。 - 将所有能从截断(损坏)的文件提取
Bio Exam.docx
到临时文件夹中。 - 将所有提取的文件添加
reconstructed.zip
到替换任何现有文件。 - 重命名
reconstructed.zip
为reconstructed.docx
。 - 尝试打开
reconstructed.docx
并查看文档是否可用。