Just do something like this:

    private String  getCellValue(HSSFRow row, HSSFCell cell)
    {
        String  result  = null;

        if (cell != null)
        {
            int cellType    = cell.getCellType();
            switch (cellType)
            {
            case    HSSFCell.CELL_TYPE_BLANK:
                break;
            case    HSSFCell.CELL_TYPE_BOOLEAN:
                boolean flag    = cell.getBooleanCellValue();
                result   = flag + "";
                break;
            case    HSSFCell.CELL_TYPE_ERROR:
                byte    error   = cell.getErrorCellValue();
                result   = error + "";
                break;
            case    HSSFCell.CELL_TYPE_FORMULA:
                result   = cell.getCellFormula();
                getFormulaEvaluator().setCurrentRow(row);
                HSSFFormulaEvaluator.CellValue  formulaCellValue    =
                    getFormulaEvaluator().evaluate(cell);
                result  = getFormulaCellValue(formulaCellValue);
                break;
            case    HSSFCell.CELL_TYPE_NUMERIC:
                if (HSSFDateUtil.isCellDateFormatted(cell))
                {
                    Date    date    =
 
HSSFDateUtil.getJavaDate(cell.getNumericCellValue());
                    DateFormat  format  = new
SimpleDateFormat(RR_DATE_FORMAT);
                    result  = format.format(date);
                }
                else
                {
                    double  value   = cell.getNumericCellValue();
                    NumberFormat    format  =
NumberFormat.getNumberInstance();
                    format.setMaximumIntegerDigits(99);
                    format.setGroupingUsed(false);

                    result   =  format.format(value);
                }
                break;
            case    HSSFCell.CELL_TYPE_STRING:
                result   = cell.getStringCellValue();
                break;
            }
        }

        return (result);
    } 

> -----Original Message-----
> From: Ashika Umanga [mailto:[EMAIL PROTECTED] 
> Sent: Wednesday, December 26, 2007 9:59 PM
> To: [email protected]
> Subject: Reading Cell value as a String regardless of the 
> cell type (HSSF)
> 
> hi guys,
> 
> I'm new to POI and what i want to do is read the String value 
> of a Cell directly without considering about the cell type.
> eg: Lets say my Excel file is something like following.
> ______________________
> |  Start Date | Index | Name |
> -----------------------------
> |2001/01/1  | 01        |umanga|
> ------------------------------
> 
> 
> So I am getting the cells as follow.
> HSSFCell cellDate=row.getCell((short)1); HSSFCell 
> cellIndex=row.getCell((short)2); HSSFCell 
> cellName=row.getCell((short)3);
> 
> so now I want to get the String value '2001/01/01' from 
> cellDate ,not the Date type.
> and get the string value '01' from cellIndex and so on...
> 
> Actually in my application ,I am reading through cells in a 
> loop and want to get the String value directly..
> 
> Any idea?
> 
> thanks in advance
> 
> umanga
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED] For 
> additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to