docs: private void processCellValue(Record record) {
  		Object value = null;
  		
  		switch (record.getSid()) {
  		case BlankRecord.sid:
  			// 空白记录
  			BlankRecord brec = (BlankRecord) record;
  			rowCellList.add(brec.getColumn(), StrUtil.EMPTY);
  			break;
  		case BoolErrRecord.sid: // 布尔类型
  			BoolErrRecord berec = (BoolErrRecord) record;
  			rowCellList.add(berec.getColumn(), berec.getBooleanValue());
  			break;
  		case FormulaRecord.sid: // 公式类型
  			FormulaRecord frec = (FormulaRecord) record;
  			if (isOutputFormulaValues) {
  				if (Double.isNaN(frec.getValue())) {
  					// Formula result is a string
  					// This is stored in the next record
  					isOutputNextStringRecord = true;
  				} else {
  					value = formatListener.formatNumberDateCell(frec);
  				}
  			} else {
  				value = '"' + HSSFFormulaParser.toFormulaString(stubWorkbook, frec.getParsedExpression()) + '"';
  			}
  			rowCellList.add(frec.getColumn(), value);
  			break;
  		case StringRecord.sid:// 单元格中公式的字符串
  			if (isOutputNextStringRecord) {
  				// String for formula
  				StringRecord srec = (StringRecord) record;
  				value = srec.getString();
  				isOutputNextStringRecord = false;
  			}
  			break;
  		case LabelRecord.sid:
  			LabelRecord lrec = (LabelRecord) record;
  			this.rowCellList.add(lrec.getColumn(), value);
  			break;
  		case LabelSSTRecord.sid: // 字符串类型
  			LabelSSTRecord lsrec = (LabelSSTRecord) record;
  			if (sstRecord == null) {
  				rowCellList.add(lsrec.getColumn(), StrUtil.EMPTY);
  			} else {
  				value = sstRecord.getString(lsrec.getSSTIndex()).toString();
  				rowCellList.add(lsrec.getColumn(), value);
  			}
  			break;
  		case NumberRecord.sid: // 数字类型
  			NumberRecord numrec = (NumberRecord) record;
  			
  			final String formatString = formatListener.getFormatString(numrec);
  			if(formatString.contains(StrUtil.DOT)) {
  				//浮点数
  				value = numrec.getValue();
  			}else if(formatString.contains(StrUtil.SLASH) || formatString.contains(StrUtil.COLON)) {
  				//日期
  				value = formatListener.formatNumberDateCell(numrec);
  			}else {
  				double numValue = numrec.getValue();
  				final long longPart = (long) numValue;
  				// 对于无小数部分的数字类型，转为Long，否则保留原数字
  				value = (longPart == numValue) ? longPart : numValue;
  			}
  
  			// 向容器加入列值
  			rowCellList.add(numrec.getColumn(), value);
  			break;
  		default:
  			break;
  		}
  	}