无法读取SalesForce导出XLS报表:Apache POI报错求助
Salesforce报表读取问题
背景
需要下载Salesforce(Sfdc)报表并提取数据:
- 下载XLSX格式报表时,部分列值被截断,仅显示255个字符;
- 下载XLS格式报表可获取完整数据,但使用Java Apache POI读取该XLS文件时遇到报错。
报错详情
使用以下代码初始化工作簿时:
Workbook workbook = WorkbookFactory.create(excelFile);抛出错误:
java.io.IOException: Can't open workbook - unsupported file type: UNKNOWN
改用
HSSFWorkbook时,抛出错误:org.apache.poi.poifs.filesystem.NotOLE2FileException: Invalid header signature; read 0x4D3C3E646165683C, expected 0xE11AB1A1E011CFD0 - Your file appears not to be a valid OLE2 document
已尝试多种编码方式,仍无法读取该Salesforce导出的XLS文件。
文件相关现象
- 导出界面:Salesforce导出选项选择的是"Excel Format (.xls)"
- Excel打开提示:打开文件时弹出警告,提示文件格式与扩展名不匹配,点击"是"后可正常查看完整数据
- 文本编辑器查看:用Notepad++打开该文件,发现内容开头为
<!DOCTYPE html>,实际是HTML格式内容,只是文件后缀被设置为.xls
内容的提问来源于stack exchange,提问作者Nitin Rathod
相关产品推荐
相关产品推荐

