当前位置: 首页>>代码示例>>Java>>正文


Java Cell.CELL_TYPE_FORMULA属性代码示例

本文整理汇总了Java中org.apache.poi.ss.usermodel.Cell.CELL_TYPE_FORMULA属性的典型用法代码示例。如果您正苦于以下问题:Java Cell.CELL_TYPE_FORMULA属性的具体用法?Java Cell.CELL_TYPE_FORMULA怎么用?Java Cell.CELL_TYPE_FORMULA使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在org.apache.poi.ss.usermodel.Cell的用法示例。


在下文中一共展示了Cell.CELL_TYPE_FORMULA属性的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getNativeValueType

@Override
public ValueType getNativeValueType(int columnIndex) throws ParseException {
	Cell cell = getCurrentCell(columnIndex);
	final int type = cell.getCellType();
	if (type == Cell.CELL_TYPE_BLANK) {
		return ValueType.EMPTY;
	} else if (type == Cell.CELL_TYPE_STRING) {
		return ValueType.STRING;
	} else if (type == Cell.CELL_TYPE_NUMERIC) {
		if (DateUtil.isCellDateFormatted(cell)) {
			return ValueType.DATE;
		} else {
			return ValueType.NUMBER;
		}
	} else if (type == Cell.CELL_TYPE_FORMULA) {
		if (cell.getCachedFormulaResultType() == Cell.CELL_TYPE_NUMERIC) {
			return ValueType.NUMBER;
		} else {
			return ValueType.STRING;
		}
	} else {
		return ValueType.STRING;
	}
}
 
开发者ID:transwarpio,项目名称:rapidminer,代码行数:24,代码来源:Excel2007ResultSet.java

示例2: objectFrom

private Object objectFrom(final HSSFWorkbook workbook, final Cell cell) {
    Object cellValue = null;
    if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
        cellValue = cell.getRichStringCellValue().getString();
    } else if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) {
        cellValue = getNumericCellValue(cell);
    } else if (cell.getCellType() == Cell.CELL_TYPE_BOOLEAN) {
        cellValue = cell.getBooleanCellValue();
    } else if (cell.getCellType()  == Cell.CELL_TYPE_FORMULA) {
        cellValue = evaluateCellFormula(workbook, cell);
    }
    return cellValue;

}
 
开发者ID:cyber-coders-j2017a,项目名称:modern.core.java.repo,代码行数:14,代码来源:ExcelXlsReaderParameter.java

示例3: isBlankRow

/**
 * 判断空行
 */
private static boolean isBlankRow(Row row) {
    if (row == null) {
        return true;
    }
    boolean result = true;
    Iterator<Cell> cells = row.cellIterator();
    String value = "";
    while (cells.hasNext()) {
        Cell cell = cells.next();
        int cellType = cell.getCellType();
        switch (cellType) {
            case Cell.CELL_TYPE_NUMERIC:
                value = String.valueOf(cell.getNumericCellValue());
                break;
            case Cell.CELL_TYPE_STRING:
                value = cell.getStringCellValue();
                break;
            case Cell.CELL_TYPE_BOOLEAN:
                value = String.valueOf(cell.getBooleanCellValue());
                break;
            case Cell.CELL_TYPE_FORMULA:
                value = String.valueOf(cell.getCellFormula());
                break;
        }
        if (StringUtils.isNotBlank(value)) {
            result = false;
            break;
        }
    }

    return result;
}
 
开发者ID:goribun,项目名称:excel-rw-annotation,代码行数:35,代码来源:BaseReadUtil.java

示例4: intercepterCellValue

public void intercepterCellValue(Cell cell, CellWrapper cellWrapper, String interceptor) throws Exception {
	if (cell == null) {
		cellWrapper.setValue(null);
	} else {
		int cellType = cell.getCellType();
		switch (cellType) {
		case Cell.CELL_TYPE_BLANK:
			cellWrapper.setValue(null);
			break;
		case Cell.CELL_TYPE_BOOLEAN:
			cellWrapper.setValue(Boolean.valueOf(cell.getBooleanCellValue()));
			break;
		case Cell.CELL_TYPE_ERROR:
			cellWrapper.setValue(cell.getErrorCellValue());
			break;
		case Cell.CELL_TYPE_FORMULA:
			cellWrapper.setValue(cell.getCellFormula());
			break;
		case Cell.CELL_TYPE_NUMERIC:
			if (DateUtil.isCellDateFormatted(cell)) {
				Date date = cell.getDateCellValue();
				cellWrapper.setValue(date);
			} else {
				cellWrapper.setValue(cell.getNumericCellValue());
			}
			break;
		case Cell.CELL_TYPE_STRING:
			cellWrapper.setValue(cell.getStringCellValue());
			break;
		}
	}
	logger.debug("before interceptor column number[" + cellWrapper.getColumn() + "] cell value[" + cellWrapper.getValue() + "] cell intercepter[" + interceptor + "]");
	this.intercepterCellValue(cellWrapper, interceptor);
	logger.debug("after interceptor  cell value[" + cellWrapper.getValue() + "]");

}
 
开发者ID:bsteker,项目名称:bdf2,代码行数:36,代码来源:AbstractExcelParser.java

示例5: getCellValue

/**
 * 获取单元格值
 *
 * @param row    获取的行
 * @param column 获取单元格列号
 * @return 单元格值
 */
public Object getCellValue(Row row, int column) {
    Object val = "";
    try {
        Cell cell = row.getCell(column);
        if (cell != null) {
            if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) {
                // val = cell.getNumericCellValue();
                // 当excel 中的数据为数值或日期是需要特殊处理
                if (HSSFDateUtil.isCellDateFormatted(cell)) {
                    double d = cell.getNumericCellValue();
                    Date date = HSSFDateUtil.getJavaDate(d);
                    SimpleDateFormat dformat = new SimpleDateFormat(
                            "yyyy-MM-dd");
                    val = dformat.format(date);
                } else {
                    NumberFormat nf = NumberFormat.getInstance();
                    nf.setGroupingUsed(false);// true时的格式:1,234,567,890
                    val = nf.format(cell.getNumericCellValue());// 数值类型的数据为double,所以需要转换一下
                }
            } else if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
                val = cell.getStringCellValue();
            } else if (cell.getCellType() == Cell.CELL_TYPE_FORMULA) {
                val = cell.getCellFormula();
            } else if (cell.getCellType() == Cell.CELL_TYPE_BOOLEAN) {
                val = cell.getBooleanCellValue();
            } else if (cell.getCellType() == Cell.CELL_TYPE_ERROR) {
                val = cell.getErrorCellValue();
            }
        }
    } catch (Exception e) {
        return val;
    }
    return val;
}
 
开发者ID:sombie007,项目名称:ExcelHandle,代码行数:41,代码来源:ImportExcel.java

示例6: getCellType

private int getCellType(Cell cell) {
	int vType = cell.getCellType();
	if (vType == Cell.CELL_TYPE_FORMULA) {
		// 获取公式类型
		vType = cell.getCachedFormulaResultType();
	}
	return vType;
}
 
开发者ID:xinufo,项目名称:teemo,代码行数:8,代码来源:RowExcelImpl.java

示例7: getValue

@SuppressWarnings("deprecation")
private Object getValue(Cell raw, String fieldType) throws CellParsingException {
	switch (raw.getCellType()) {
	case Cell.CELL_TYPE_BOOLEAN:
		return raw.getBooleanCellValue();

	case Cell.CELL_TYPE_STRING: {
		String s = raw.getStringCellValue();
		String boolString = s.toLowerCase();
		if (boolString.equals("yes"))
			return true;
		if (boolString.equals("no"))
			return false;
		return s;
	}
	case Cell.CELL_TYPE_NUMERIC:
		if (DateUtil.isCellDateFormatted(raw)) {
			Date date = raw.getDateCellValue();
			return LocalDate.of(date.getYear() + 1900, date.getMonth() + 1, date.getDate());
		}
		return (int) raw.getNumericCellValue();

	// formula parsing doesnot work
	// can be done using FormulaEvaluater
	case Cell.CELL_TYPE_FORMULA:
		return true;

	case Cell.CELL_TYPE_BLANK: {

		return getInstance(fieldType);
	}
	}
	return null;
}
 
开发者ID:NeebalLearningPvtLtd,项目名称:Excel-to-POJO,代码行数:34,代码来源:RowParser.java

示例8: getCellFormatValue

/**
 * 根据HSSFCell类型设置数据(简单导入使用)
 *
 * @param cell 单元格
 * @return 处理后的值
 */
private static String getCellFormatValue(Cell cell) {
    String cellValue;
    if (cell != null) {
        // 判断当前Cell的Type
        switch (cell.getCellType()) {
            // 如果当前Cell的Type为NUMERIC
            case Cell.CELL_TYPE_NUMERIC:
            case Cell.CELL_TYPE_FORMULA: {
                // 判断当前的cell是否为Date
                if (DateUtil.isCellDateFormatted(cell)) {
                    // 如果是Date类型则,转化为Data格式
                    Date date = cell.getDateCellValue();
                    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                    cellValue = sdf.format(date);
                }
                // 如果是纯数字
                else {
                    //避免科学计数
                    java.text.NumberFormat nf = java.text.NumberFormat.getInstance();
                    nf.setGroupingUsed(false);
                    // 取得当前Cell的数值
                    cellValue = String.valueOf(nf.format(cell.getNumericCellValue()));
                }
                break;
            }
            // 如果当前Cell的Type为STRING
            case Cell.CELL_TYPE_STRING:
                // 取得当前的Cell字符串
                cellValue = cell.getStringCellValue();
                break;
            // 默认的Cell值
            default:
                cellValue = " ";
        }
    } else {
        cellValue = "";
    }
    return cellValue;
}
 
开发者ID:goribun,项目名称:excel-rw-annotation,代码行数:45,代码来源:BaseReadUtil.java

示例9: setCellValue

protected void setCellValue(String cellName, String value,boolean notifyUpdate)
{
	
	boolean isNumeric = GeneralUtil.isNumeric(value);
	CellData cellData = getCellDataByCellName(cellName);

	if(cellData.cell == null)
		cellData.cell = createCellBlank(cellName);
	//si es una formula cambio el tipo de celda para setear un numero
	//es el caso de las celdas mixtas que pueden ser formula o un valor ingresado por el usuario
	if (cellData.cell.getCellType() == Cell.CELL_TYPE_FORMULA)
	{
		
	//	System.out.println("cell : " + cellName);
	//	System.out.println("value : " + cellName);
		
		if(isNumeric)
		{
			cellData.cell.setCellType(Cell.CELL_TYPE_NUMERIC);
		}
		else
		{
			cellData.cell.setCellType(Cell.CELL_TYPE_STRING);	
		}
		
	}

	
	if(isNumeric)
	{
		cellData.cell.setCellValue(Double.parseDouble(value));
	}
	else
	{
		
		cellData.cell.setCellValue(value);
	}

		if(notifyUpdate)
		{
			this.notifyUpdateCell(cellData);
			
		}
			
}
 
开发者ID:rodrigoEclipsa,项目名称:excelToApp,代码行数:45,代码来源:ExcelBase.java

示例10: getCellValue

private CellData getCellValue(CellData cellData) 
{

	//CellData cellData = new CellData();

	if(cellData.cell != null)
	{
	// evaluator.evaluateFormulaCell(cell);

	int cellTypeEvaluator = cellData.workBookObject.evaluator.evaluateFormulaCell(cellData.cell);

	int cellType = cellTypeEvaluator > -1 ? cellTypeEvaluator : cellData.cell
			.getCellType();

	switch (cellType)
	{

	case Cell.CELL_TYPE_BLANK:

		// cellData.put("type",HSSFCell.CELL_TYPE_BLANK);
		cellData.value = cellData.cell.getStringCellValue();
		
		break;

	case Cell.CELL_TYPE_NUMERIC:

		// cellData.put("type",HSSFCell.CELL_TYPE_NUMERIC);
		cellData.value = Double.toString(cellData.cell.getNumericCellValue());

		break;

	case Cell.CELL_TYPE_STRING:

		// cellData.put("type",HSSFCell.CELL_TYPE_STRING);
		cellData.value = cellData.cell.getStringCellValue();

		break;

	case Cell.CELL_TYPE_ERROR:

		cellData.error = FormulaError.forInt(cellData.cell.getErrorCellValue()).name();
		cellData.value = "ERROR";

		break;

	case Cell.CELL_TYPE_FORMULA:

		// cellData.put("type", HSSFCell.CELL_TYPE_ERROR);
		cellData.value = cellData.cell.getCellFormula();

		break;

	default:

		// cellData.put("type",HSSFCell.CELL_TYPE_STRING);
		cellData.value = cellData.cell.getCellStyle().getDataFormatString();

	}

	// si la celda es pocentaje multiplico por 100

	if (cellData.cell.getCellStyle().getDataFormatString().contains("%")
			&& cellType == Cell.CELL_TYPE_NUMERIC)
	{

		Double perceValue = Double.parseDouble(cellData.value) * 100;
		cellData.value = perceValue.toString();

	}

	}
	else
	{
		cellData.value = null;
		
	}

	
	return cellData;
}
 
开发者ID:rodrigoEclipsa,项目名称:excelToApp,代码行数:80,代码来源:ExcelBase.java


注:本文中的org.apache.poi.ss.usermodel.Cell.CELL_TYPE_FORMULA属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。