java通过poi生成excel的版本问题
我通过HSSFWorkbookwb=newHSSFWorkbook();创建了excel97-2003的文档对象通过XSSFWorkbookwb=newXSSFWorkb...
我通过HSSFWorkbook wb = new HSSFWorkbook();创建了excel97-2003的文档对象
通过XSSFWorkbook wb = new XSSFWorkbook();创建了exce2007的文档对象
我想知道能不能通过XSSFWorkbook wb = new XSSFWorkbook();创建2003文档对象。我试了好多次,创建的文件读取都会提示有问题 展开
通过XSSFWorkbook wb = new XSSFWorkbook();创建了exce2007的文档对象
我想知道能不能通过XSSFWorkbook wb = new XSSFWorkbook();创建2003文档对象。我试了好多次,创建的文件读取都会提示有问题 展开
1个回答
展开全部
XSSF不能读取Excel2003以前(包括2003)的版本,
没需要就按你之前的继续,如果在读取前判断文件是2003前的版本还是2007的版本,提供个思路。XSSF和HSSF虽然在不同的包里,但却引用了同一接口Workbook,
Workbook book = null;
try {
book = new XSSFWorkbook(excelFile);
} catch (Exception ex) {
book = new HSSFWorkbook(new FileInputStream(excelFile));
}
各版本的Excel中测试,没有发生异常
没需要就按你之前的继续,如果在读取前判断文件是2003前的版本还是2007的版本,提供个思路。XSSF和HSSF虽然在不同的包里,但却引用了同一接口Workbook,
Workbook book = null;
try {
book = new XSSFWorkbook(excelFile);
} catch (Exception ex) {
book = new HSSFWorkbook(new FileInputStream(excelFile));
}
各版本的Excel中测试,没有发生异常
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询