Oracle
 sql >> Base de données >  >> RDS >> Oracle

Ajout de POI .0 lors de la lecture de données numériques à partir d'Excel

Ceci est pratiquement identique à un certain nombre d'autres questions ici, telles que renvoie un nombre décimal au lieu d'une chaîne (POI jar)

La réponse est la même que celle de celui que j'ai donné ici :

POI vous donne la valeur exacte qu'Excel a stockée dans le fichier. Généralement, si vous écrivez un nombre dans une cellule Excel, Excel le stockera sous forme de nombre avec une mise en forme. POI fournit une assistance pour faire ce formatage pour vous si vous le souhaitez (la plupart des gens ne le font pas - ils veulent que les nombres soient des nombres pour pouvoir les utiliser)

La classe que vous recherchez est DataFormatter . Votre code serait quelque chose comme

 DataFormatter fmt = new DataFormatter();
 for (Row r : sheet) {
    for (Cell c : r) {
       CellReference cr = new CellRefence(c);
       System.out.println("Cell " + cr.formatAsString() + " is " + 
                          fmt.formatCellValue(c) );
    }
 }