Oracle
 sql >> Datenbank >  >> RDS >> Oracle

POI Anhängen von .0 beim Lesen numerischer Daten aus Excel

Dies ist praktisch identisch mit einer Reihe anderer Fragen hier, wie z. jar">Rückgabe einer Dezimalzahl anstelle einer Zeichenfolge (POI-Jar)

Die Antwort ist dieselbe wie bei eine, die ich hier gegeben habe :

POI gibt Ihnen genau den Wert, den Excel in der Datei gespeichert hat. Wenn Sie eine Zahl in eine Excel-Zelle schreiben, speichert Excel diese im Allgemeinen als Zahl mit Formatierung. POI bietet Unterstützung, um diese Formatierung für Sie vorzunehmen, wenn Sie dies wünschen (die meisten Leute tun dies nicht - sie wollen die Zahlen als Zahlen, damit sie sie verwenden können)

Die gesuchte Klasse ist DataFormatter . Ihr Code wäre so etwas wie

 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) );
    }
 }