1. 程式人生 > >【POI】——獲得單元格的值,並轉化成字串

【POI】——獲得單元格的值,並轉化成字串

本篇文章分享一些在做匯入匯出EXCEL功能時用到的工具類的一些程式碼。

/**
     * @param cell
     * @return
     */
    public static String getStringValueFromCell(Cell cell) {
        SimpleDateFormat sFormat = new SimpleDateFormat("MM/dd/yyyy");
        DecimalFormat decimalFormat = new DecimalFormat("#.#");
        String cellValue = ""
; if(cell == null) { return cellValue; } else if(cell.getCellType() == Cell.CELL_TYPE_STRING) { cellValue = cell.getStringCellValue(); } else if(cell.getCellType() == XSSFCell.CELL_TYPE_NUMERIC) { if(HSSFDateUtil.isCellDateFormatted(cell)) { double
d = cell.getNumericCellValue(); Date date = HSSFDateUtil.getJavaDate(d); cellValue = sFormat.format(date); } else { cellValue = decimalFormat.format((cell.getNumericCellValue())); } } else
if(cell.getCellType() == Cell.CELL_TYPE_BLANK) { cellValue = ""; } else if(cell.getCellType() == Cell.CELL_TYPE_BOOLEAN) { cellValue = String.valueOf(cell.getBooleanCellValue()); } else if(cell.getCellType() == Cell.CELL_TYPE_ERROR) { cellValue = ""; } else if(cell.getCellType() == Cell.CELL_TYPE_FORMULA) { cellValue = cell.getCellFormula().toString(); } return cellValue; }

如果直接使用

cell.getStringCellValue();

當單元格的格式為數字或其他格式時,這句程式碼就會報錯,在開發時一定要注意。