本文整理匯總了Java中org.apache.poi.ss.usermodel.Cell.CELL_TYPE_ERROR屬性的典型用法代碼示例。如果您正苦於以下問題:Java Cell.CELL_TYPE_ERROR屬性的具體用法?Java Cell.CELL_TYPE_ERROR怎麽用?Java Cell.CELL_TYPE_ERROR使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類org.apache.poi.ss.usermodel.Cell
的用法示例。
在下文中一共展示了Cell.CELL_TYPE_ERROR屬性的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: 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() + "]");
}
示例2: isMissing
@Override
public boolean isMissing(int columnIndex) {
Cell cell = getCurrentCell(columnIndex);
try {
boolean missing = cell == null || cell.getCellType() == Cell.CELL_TYPE_BLANK
|| cell.getCellType() == Cell.CELL_TYPE_ERROR || "".equals(cell.getStringCellValue().trim());
return missing;
} catch (IllegalStateException e) {
return false;
}
}
示例3: getValue
/** 從表格之中讀取數據並進行處理
* @param fieldInfo
* @param cell 當前cell
* @return
* @throws Exception
*/
public static Object getValue(ImportFieldInfo fieldInfo, Cell cell) throws Exception{
int size = fieldInfo.getTypeChain().size();
Class<?> type = fieldInfo.getTypeChain().get(size - 1);
String dateFormat = fieldInfo.getDateFormat();
int cellType = cell.getCellType();
Object obj = null ;
switch (cellType) {
case Cell.CELL_TYPE_BLANK:
return null;
case Cell.CELL_TYPE_BOOLEAN:
obj = cell.getBooleanCellValue();
break;
case Cell.CELL_TYPE_STRING:
obj = cell.getStringCellValue();
break;
case Cell.CELL_TYPE_NUMERIC:
if(DateUtil.isCellDateFormatted(cell)){
obj = DateUtil.getJavaDate(cell.getNumericCellValue());
}else if(Number.class.isAssignableFrom(type) || ClassUtils.isBaseNumberType(type)){
//當pojo字段類型是數字型時以數字形式獲取
obj = cell.getNumericCellValue();
}else{
//其他類型都以string獲取
obj = DATA_FORMATTER.formatCellValue(cell);
}
break;
case Cell.CELL_TYPE_ERROR:
return null;
}
if(fieldInfo.getImportProcessor() != null){
obj = fieldInfo.getImportProcessor().process(obj);
}
obj = ConvertUtils.convertIfNeccesary(obj, type, dateFormat);
return obj;
}
示例4: 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;
}
示例5: 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;
}