FileInputStream fileInputStream = request.getFileInputStream();
Workbook sheets = null;
try {
String password = request.getPassword();
if (StringUtils.isNotEmpty(password)) {
POIFSFileSystem pfs = new POIFSFileSystem(fileInputStream);
EncryptionInfo encInfo = new EncryptionInfo(pfs);
Decryptor decryptor = Decryptor.getInstance(encInfo);
decryptor.verifyPassword(password);
sheets = WorkbookFactory.create(decryptor.getDataStream(pfs));
} else {
sheets = WorkbookFactory.create(fileInputStream);
}
} catch (IOException e) {
} catch (InvalidFormatException e) {
} catch (GeneralSecurityException e) {
}
Sheet sheetAt = sheets.getSheetAt(0);
int rows = sheetAt.getLastRowNum();
//skip