该错误消息与XLS文件的BOF(文件开始)记录有关。但是,该示例表明您正在尝试读取XLSX文件。
有两个可能的原因:
- 您的xlrd版本过旧,不支持读取xlsx文件。
- XLSX文件是加密的,因此以OLE复合文档格式而不是zip格式存储,从而使其在xlrd中显示为较早的格式XLS文件。
仔细检查您是否实际上正在使用最新版本的xlrd。用一个单元格中的数据打开一个新的XLSX文件应该验证这一点。
但是,我猜您正在遇到第二种情况,并且文件已加密,因为您在上面声明已经使用xlrd 0.9.2版。
如果您显式应用工作簿密码,而且还用密码保护了某些工作表元素,则XLSX文件将被加密。这样,即使您不需要密码也可以打开XLSX加密文件。
更新 :请参阅@BStew的第三个(更有可能的答案)文件是由Excel打开的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)