java语言怎么读取excel文件公式计算后的值

FileInputStream fis = new FileInputStream("c:/temp/test.xls");

Workbook wb = new HSSFWorkbook(fis); //or new XSSFWorkbook("c:/temp/test.xls")

Sheet sheet = wb.getSheetAt(0);

FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();

// suppose your formula is in B3

CellReference cellReference = new CellReference("B3");

Row row = sheet.getRow(cellReference.getRow());

Cell cell = row.getCell(cellReference.getCol());

CellValue cellValue = evaluator.evaluate(cell);

switch (cellValue.getCellType()) {

case Cell.CELL_TYPE_BOOLEAN:

System.out.println(cellValue.getBooleanValue());

break;

case Cell.CELL_TYPE_NUMERIC:

System.out.println(cellValue.getNumberValue());

break;

case Cell.CELL_TYPE_STRING:

System.out.println(cellValue.getStringValue());

break;

case Cell.CELL_TYPE_BLANK:

break;

case Cell.CELL_TYPE_ERROR:

break;

// CELL_TYPE_FORMULA will never happen

case Cell.CELL_TYPE_FORMULA:

break;

}

你可能感兴趣的:(java语言怎么读取excel文件公式计算后的值)