Hallo, vielleicht kann mir jemand bei folgendem Problem helfen:
Mit
float zahl = Float.parseFloat(string_variable)
bekomme ich einen String, der eine Zahl beinhaltet, in einen float-Wert umgewandelt. Das funktioniert aber nur, solange der String eine Zahl mit einem „.“ als Dezimaltrennzeichen besitzt. Meine Zahlen in den Strings benutzen aber ein „,“. Wie kann ich diese Strings nun in float-Werte umwandeln ?
Hallo,
im einfachsten Fall das „,“ durch einen „.“ ersetzen.
String tmp = string\_variable.replace(',','.');
float f = Float.parseFloat(tmp);
Gruß
Torsten
Vielen Dank. Damit funktioniert’s !
Hi,
den einfachsten Fall hast du ja schon beschrieben bekommen.
Der „richtige“ Weg ist eigentlich, dass du dazu die Klasse NumberFormat nutzt.
Dies begründet sich damit, dass eine internationalisierte Version z.B. im Englischen das ‚,‘ als Tausendertrennzeichen benutzt, im Deutschen ist dies der ‚.‘ => Somit würde die einfache Methode ggf. einen völlig falschen Wert liefern.
Ciao, Bill