3

我正在使用python进行excel处理。
我正在使用 xlrd 模块(版本 0.6.1)。

我很想获取大部分的 excel 文件,但对于一些 excel 文件,它给了我错误:

XLRDError: Expected BOF record; found 0x213c

谁能让我知道如何解决这个问题?
提前致谢。

4

1 回答 1

5

您所拥有的很可能是一个“XML Spreadsheet 2003 (*.xml)”文件……"<!"也就是"\x3c\x21"(XML 流以它开头)被解释为 little-endian number 0x213c

记事本:前两行:

<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>

您也可以通过使用 Excel 打开文件然后单击Save As并查看显示的文件类型来检查这一点。当您在那里时,将其保存为 XLS 文件,以便您xlrd可以阅读它。

注意:此 XML 文件不是 Excel 2007+ XLSX 文件。XLSX 实际上是一个包含一堆 XML 流的 ZIP 文件(以 开头"PK",而不是开头)。"<?"

于 2012-04-25T11:35:39.983 回答