String in einen Float-Wert umwandeln

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