Hola amigo, estoy utilizando POI, para capturar el valor de la celda debes tener algunas condiciones importantes en el tipo de celda, esto es lo que hago al momento:
Código Java:
Ver original//if(Arrays.binarySearch(this.Colombia, i) < 0){//Valida las excepciones de columnas
switch(hssfCell.getCellType()){
case HSSFCell.CELL_TYPE_BLANK: informacionFila.add(""); break;
case HSSFCell.CELL_TYPE_BOOLEAN: informacionFila.add(hssfCell.getBooleanCellValue()); break;
//case HSSFCell.CELL_TYPE_FORMULA: informacionFila.add(hssfCell.getStringCellValue()) ; break;
case HSSFCell.CELL_TYPE_FORMULA: informacionFila.add(""); break;
case HSSFCell.CELL_TYPE_NUMERIC:
//informacionFila.add(hssfCell.getNumericCellValue());
if(DateUtil.isCellDateFormatted(hssfCell)) {
//informacionFila.add(hssfCell.getDateCellValue());
informacionFila.add(ApiSimex.formatearFecha(hssfCell.toString()));
} else {
informacionFila.add(hssfCell.getNumericCellValue());
}
break;
//case HSSFCell.CELL_TYPE_NUMERIC: informacionFila.add(hssfCell.getDateCellValue()); break;
case HSSFCell.CELL_TYPE_STRING: informacionFila.add(hssfCell.getStringCellValue()) ; break;
default:
}
//}
Espero sea de ayuda, saludos...