//获得输入流 (file:前端传到后台的文件 @RequestParam("file") MultipartFile file)
InputStream inputStream = file.getInputStream();
Workbook workbook = null;
//获得文件的后缀名
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
//根据后缀名判断
if(suffix.equals(".xlsx")){
workbook = new XSSFWorkbook(inputStream);//Excel 2007
}else if(suffix.equals(".xls")){
workbook = new HSSFWorkbook(inputStream);//Excel 2003
}
Row row = null;
rows = sheet.getPhysicalNumberOfRows();
num = rows;
//循环sesheet页中数据(我的第一行是标题所以num+1)从第二行开始,第一行是标题
for (int i = 1; i < num + 1; i++) {
row = sheet.getRow(i+1);
//第一列
if (row.getCell(0) != null) {
//这时候已经获取到了表格的某一个数据,根据自己实际情况存入数据库
//我获取的是带小数的数据所以用Double,根据实际需求修改
Double unit_num = row.getCell(0).getNumericCellValue();
}
//第二列
if (row.getCell(1) != null) {
//获取的是字符串类型的数据所以用String,不加.getString()会报错
String road_line = row.getCell(1).getRichStringCellValue().getString();
}
xtJzUnitService.insertXtJzUnit();//调用函数,存到数据库中
}