FileInputStream fis = new FileInputStream("C:/test.xlsx");
Workbook wb = new XSSFWorkbook(fis); //or new XSSFWorkbook("/somepath/test.xls")
org.apache.poi.ss.usermodel.Sheet sheet = wb.getSheetAt(0);
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
XSSFRow hssfrow = (XSSFRow) sheet.getRow(0);
XSSFCell cell = hssfrow.getCell(0);
if (cell!=null) {
switch (cell.getCellType()) {
case XSSFCell.CELL_TYPE_BOOLEAN:
System.out.println(cell.getBooleanCellValue());
break;
case XSSFCell.CELL_TYPE_NUMERIC:
System.out.println(cell.getNumericCellValue());
break;
case XSSFCell.CELL_TYPE_STRING:
System.out.println(cell.getStringCellValue());
break;
case XSSFCell.CELL_TYPE_BLANK:
break;
case XSSFCell.CELL_TYPE_ERROR:
System.out.println(cell.getErrorCellValue());
break;
// CELL_TYPE_FORMULA will never occur
case XSSFCell.CELL_TYPE_FORMULA:
System.out.println(cell.getCellFormula());
evaluator.evaluateFormulaCell(cell);
System.out.println(cell.getNumericCellValue());
break;
}
}
读取xls里面的公式,类似,只要把XSSF换成HSSF那一套就行。