Lire en entier numérique de la cellule à l'aide d'Apache POI en java

J'ai une application qui lit xls feuille à l'aide d'apache poi. Lorsque la cellule contient une valeur numérique, je l'ai lu en ligne.getCell(i).getNumericValue(). Mais il renvoie à virgule flottante chiffres. comme si la valeur de la cellule est de 1, il retourne 1.0. Puis-je le convertir en int ? Tout helpwould être apprécié. J'ai essayé Entier.parseInt(valeur)- mais il jette NumberFormat exception.Toute aide est appréciée.Voici le pseudo-code:

FileInputStream file = new FileInputStream(new File("C:\\test.xls"));
HSSFWorkbook workbook = new HSSFWorkbook(file);
HSSFSheet sheet = workbook.getSheetAt(0);
Iterator<Row> rowIterator = sheet.iterator();
while(rowIterator.hasNext()) {
    Row row = rowIterator.next();
    Iterator<Cell> cellIterator = row.cellIterator();
    while(cellIterator.hasNext()) {
        Cell cell = cellIterator.next();
        switch(cell.getCellType()) {
            case Cell.CELL_TYPE_NUMERIC:
                String value= String.valueOf(cell.getNumericCellValue());
                int intVal = Integer.parseInt(value)-->>throws Exception
Il a obtenu, extraire la valeur, comme le double de conert à int :Double val = cellule.getNumericCellValue(); val.intValue donnera la réponse
Voici une solution simple: double dval = row.getCell(cellCounter, XSSFRow.CREATE_NULL_AS_BLANK ).getNumericCellValue(); System.out.println(new Integer(new Double(dval).intValue()).toString());

OriginalL'auteur Parameswar | 2014-09-10