XLSX 文件是否按照定义采用 UTF-8 编码?

Mar*_*rco 6 excel encoding utf-8 xlsx

我正在尝试使用 PHP 读取 XLSX 文件。确切地说,使用gneustaetter/XLSXReader。但是,这些 XLSX 文件是由不同的公司使用不同的软件生成的。所以我想检查他们是否有正确的编码并且总是找到 UTF-8。

因此,我的问题如上所述:XLSX 文件是否按定义编码为 UTF-8?或者是否存在可能破坏我正在处理的导入脚本的异常?

tad*_*man 5

假设它总是 UTF-8 是有风险的。我只是将您的期望作为 XML 在 XML 标头中描述的内容的关键。根据我的经验,Windows-1252 编码数据总是在您最不期望的时候出现。您可能会检查XLSX 规范更仔细地以了解更多信息。

这是一个与 Windows-1252 编码的 XLSX 文件相关Chromium 错误,因此这些错误似乎存在于野外。也许它们是由 Microsoft Office 以外的程序生成的。随着 LibreOffice 之类的东西变得越来越流行,可能没有最强大的 XLSX 支持的旧版本可能最终会与您的代码进行交互。您可能不希望在您的代码中出现这样的错误。

除非您有拒绝无效编码的具体理由,否则请尝试尽可能地包容。根据严格的定义,JSON 是 UTF-8。根据定义,XLSX 似乎是 XML,但编码并不固定。UTF-8 似乎只是默认约定。