@RequestMapping("/updateFile")
public void updateFile (MultipartFile file, HttpServletRequest req, HttpServletResponse resp) throws IOException {
//将上传到的MultipartFile转为输入流,然后交给POI去解析即可。可以分为如下四个步骤:
//1.创建HSSFWorkbook对象
HSSFWorkbook workbook = new HSSFWorkbook(new POIFSFileSystem(file.getInputStream()));
//2.获取一共有多少sheet,然后遍历
int numberOfSheets = workbook.getNumberOfSheets();
for (int i = 0; i < numberOfSheets; i++) {
HSSFSheet sheet = workbook.getSheetAt(i);
//3.获取sheet中一共有多少行,遍历行(注意第一行是标题)
int physicalNumberOfRows = sheet.getPhysicalNumberOfRows();
News news;
for (int j = 0; j < physicalNumberOfRows; j++) {
if (j == 0) {
continue;//标题行
}
//4.获取每一行有多少单元格,遍历单元格
int physicalNumberOfCells = sheet.getRow(j).getPhysicalNumberOfCells();
news=new News();
for (int k = 0; k < physicalNumberOfCells; k++) {
//获取单元格
HSSFCell cell = sheet.getRow(j).getCell(k);
//设置单元格类型
cell.setCellType(CellType.STRING);
//获取单元格数据
System.out.println(cell.getStringCellValue());
}
}
}
}
获取到单元格的数据就可以保存到类里面
注意点:获取单元格数据之前一定要设置单元格类型,否则会报错!



