`
Goro
  • 浏览: 170774 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

POI取得Cell的字符串(String)值

    博客分类:
  • Java
阅读更多
public final static String DATE_OUTPUT_PATTERNS = "yyyy-MM-dd'T'HH:mm:ss.SSSZ";
public final static SimpleDateFormat simpleDateFormat = new SimpleDateFormat(
		DATE_OUTPUT_PATTERNS);

public static String getCellValue(Cell cell) {
	String ret = "";
	if (cell == null) return ret;
	CellType type = cell.getCellTypeEnum();
	switch (type) {
	case BLANK:
		ret = "";
		break;
	case BOOLEAN:
		ret = String.valueOf(cell.getBooleanCellValue());
		break;
	case ERROR:
		ret = null;
		break;
	case FORMULA:
		Workbook wb = cell.getSheet().getWorkbook();
		CreationHelper crateHelper = wb.getCreationHelper();
		FormulaEvaluator evaluator = crateHelper.createFormulaEvaluator();
		ret = getCellValue(evaluator.evaluateInCell(cell));
		break;
	case NUMERIC:
		if (DateUtil.isCellDateFormatted(cell)) {
			Date theDate = cell.getDateCellValue();
			ret = simpleDateFormat.format(theDate);
		} else {
			ret = NumberToTextConverter.toText(cell.getNumericCellValue());
		}
		break;
	case STRING:
		ret = cell.getRichStringCellValue().getString();
		break;
	default:
		ret = "";
	}

	return ret; // 有必要自行trim
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics