jimb0p
Erfahrenes Mitglied
Hallo Zusammen,
ich habe folgende Funktion:
Die benutze ich damit mir jeder Float Wert gerundet wird. Das funktioniert auch fehlerfrei. Wenn ich mir den gerundeten Wert ausgeben lasse mit System.out.print bekomme ich ein korrektes Ergebnis. Wenn ich nun aber den Rückgabewert der Funktion an einem PreparedStatement mittels rs.setFloat übergebe, bekomme ich einen Wert mit 12 Nachkommastellen. Übergebe ich den Wert stattdessen mit
kommt in der Datenbank der korrekte Wert an. Mich würde interessieren warum das so ist und wie man das korrekt macht.
Grüße!
ich habe folgende Funktion:
Java:
public float roundFloatNumber(float value){
DecimalFormat df = new DecimalFormat();
df.setMinimumFractionDigits(2);
df.setMaximumFractionDigits(2);
return Float.parseFloat(df.format(value).replace(",", "."));
}
Die benutze ich damit mir jeder Float Wert gerundet wird. Das funktioniert auch fehlerfrei. Wenn ich mir den gerundeten Wert ausgeben lasse mit System.out.print bekomme ich ein korrektes Ergebnis. Wenn ich nun aber den Rückgabewert der Funktion an einem PreparedStatement mittels rs.setFloat übergebe, bekomme ich einen Wert mit 12 Nachkommastellen. Übergebe ich den Wert stattdessen mit
Java:
pStmnt.setString(8, String.valueOf(fPreisGesamt));
kommt in der Datenbank der korrekte Wert an. Mich würde interessieren warum das so ist und wie man das korrekt macht.
Grüße!