Excel can behave quite oddly at times and it will create a record for a cell
if it has been 'touched' in any way by the user during creation of the file.
By this, I mean that if the user entered a value into a cell and then
cleared that out or if they set a format and then removied it, Excel will
recognise that something was done to the cell and will create a record for
it in the file. Without seeing the actual file/files you are working with I
cannot comment much further but do suspect that this may have been the case;
either the user or the application that created the file left a few of these
artifacts around. I do not expect that this is a problem with POI but to be
certain, can you post one of the files that is exhibiting this sort of
behaviour so that we could take a closer look at it please? Further, can you
say which version of the API you are using and how the Excel file is
generated - by someone using Excel or by another application - please?

Yours

Mark B



Aju Mathai wrote:
> 
> Hi,
> 
> I am using the following POI libraries to read in the files with .xls
> and .xlsx files. I found a strange problem ,the celliterator.hasNext()
> sometimes gives true even if the next column in my xls file seems to
> be blank, i have no additional columns. How do i take care of such
> blank cells ?
> 
> Here is my code snippet
> 
>                     for(Iterator<Cell> ri = row.cellIterator();
> ri.hasNext();)  {
>                         Cell cell = ri.next();
>                       
>                               switch(cell.getCellType()){
>                               case Cell.CELL_TYPE_STRING:
>                                       
> text.append(cell.getRichStringCellValue().getString().trim());
>                                       break;
>                               case Cell.CELL_TYPE_NUMERIC:
>                                       text.append(cell.getNumericCellValue());
>                                       break;
>                               case Cell.CELL_TYPE_BOOLEAN:
>                                       text.append(cell.getBooleanCellValue());
>                                       break;
>                               case Cell.CELL_TYPE_FORMULA:
>                                       text.append(cell.getCellFormula());
>                                       break;
>                               case Cell.CELL_TYPE_BLANK:
>                                       break;
>                               default:
>                                       text.append("");
>                               }
>                               // Column Delimiter
>                               if(ri.hasNext() &&  !(cell.getCellType() == 
> Cell.CELL_TYPE_BLANK))
>                                       text.append(COLUMN_DELIMITER);
>                       }
> 
> 
> Thanks
> mathaj
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Problem-reading-XLS-files-tp27254834p27269628.html
Sent from the POI - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to