Debian 9 无法识别 OpenOffice 等保存的 MS Office 文档的 Mime 类型

Debian 9 无法识别 OpenOffice 等保存的 MS Office 文档的 Mime 类型

就在今天,我遇到了一个问题,即由 OpenOffice 包创建并以 XLSX 格式保存的文档在 Debian 9 中被识别为八位字节流而不是有效的 MS Office 格式:

root@linux# file -b --mime-type /tmp/test.xlsx
application/octet-stream

原生 MS Office 文档被识别且没有问题:

root@linux# file -b --mime-type /tmp/intro.docx
application/vnd.openxmlformats-officedocument.wordprocessingml.document

有人能解释一下从 OpenOffice、LibreOffice 等保存的 MS Office 文档有什么问题吗?或者可能是我的 Debian 设置有问题?

答案1

你问的是两个不同的文件扩展名,“xlsx”不是“文字处理文档”,但它们确实共享相同的文件格式:它们都是PK以前两个字节为特征的 zip 文件。

简单的答案是,它file不知道.xlsx,但知道.docx文件是用于 Word 的。它可能会file进一步检查标题,因为标题中似乎有一些与内容类型相关的信息(“content_types.xml”)。Excel 和 Word 标题看起来“相同”。

因此,要么是file不知道“xlsx”,要么是 OpenOffice 无法在“xlsx”文件中放入额外的元数据。

检查“xlsx”文件的前64个字节,看它是否与“docx”文件相似。

https://en.wikipedia.org/wiki/Office_Open_XML

相关内容