1.背景
测试文件地址:https://ifiletest.XXX.com/mis/temp/settlement/csv/settlement_cost/rentingexpenseitem1554975619468.xlsx
目的:读取Excel文件内容,对单元格的值做校验
针对不同的Excel版本,要采用不同的工具类
HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls;
XSSFWorkbook:是操作Excel2007后的版本,扩展名是.xlsx;
SXSSFWorkbook:是操作Excel2007后的版本,扩展名是.xlsx;
2.具体实现
URL url = new URL(testUrl);//把远程文件地址转换成URL格式
InputStream fin = url.openStream();
XSSFWorkbook work = new XSSFWorkbook(fin);//我的测试文件后缀为xlsx,所以用XSSF
fin.close();
XSSFSheet sheet = work.getSheetAt(0);//获取第一个表
int columnNum = 0;
int rowNum=sheet.getLastRowNum()-sheet.getFirstRowNum();//如果要取表中所有行,rowNum需要+1
if (sheet.getRow(1) != null) {//测试文件的第一行为标题,所以下标取了1
columnNum = sheet.getRow(1).getLastC