Я использую Apache POI для работы с электронными таблицами, и мне нужно выдать исключение, если электронная таблица имеет более одного листа. Проблема заключается в том, что если файл является .xlsx, он работает нормально, но если файл является .xls, он всегда дает размер 0. Это код:
public void validateSpreadsheet(String ext) {
if (ext.equals("xls") || ext.equals("xlsx") || ext.equals("xlsm")) {
Workbook myWorkBook;
try {
if (ext.equals("xls")) {
myWorkBook = new HSSFWorkbook();
} else {
myWorkBook = new XSSFWorkbook();
}
} catch (POIXMLException ex) {
throw ProdutoExceptions.OOXML_NOT_ALLOWED;
}
if(myWorkBook.getNumberOfSheets() > 1){
throw ProdutoExceptions.INVALID_NUMBER_OF_SHEETS;
}
}