Laden...

Aus "19,123" wird bei double.Parse 19123

Erstellt von dimuwe vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.426 Views
Hinweis von herbivore vor 13 Jahren

Abgeteilt von Die ersten n Nachkommastellen ermitteln

D
dimuwe Themenstarter:in
168 Beiträge seit 2005
vor 13 Jahren
Aus "19,123" wird bei double.Parse 19123

Hallo,

bei mir ist der Ausgagswert z.B 19,123 als String!
Wenn ich diesen mit umwandeln will:


string sWert = "19,123";
double dWert = double.Parse( sWert );

bekomme ich 19123.0 zurück.

Ich benötige den Stringwert aber nur mit zwei Nachkommastellen. (gerundet)

kann mir den jemand hierbei helfen?

Vielen Dank
dimuwe

Gelöschter Account
vor 13 Jahren

beachte, das du hier die korrekte Culture für das Parsen übergeben musst.

L
862 Beiträge seit 2006
vor 13 Jahren

Mach aus dem Komma einen Punkt dann gehts.

49.485 Beiträge seit 2005
vor 13 Jahren

Hallo Lector,

das ist nicht sicher. Die Lösung von JAck30lena ist vorzuziehen.

herbivore

D
dimuwe Themenstarter:in
168 Beiträge seit 2005
vor 13 Jahren

An alle,
vielen Dank. Ich hatte in meiner Frage schon den Fehler. Da ich das Komma doch schon in einen Punkt gewandelt habe.

Das heißt:

  • mit Punk geht es nicht
  • mit System.Globalization.CultureInfo.InvariantCulture geht es nicht
  • mit Komma geht es.

Sorry für die Verwirrung.

dimuwe

49.485 Beiträge seit 2005
vor 13 Jahren

Hallo dimuwe,

  • mit Punk geht es nicht
  • mit System.Globalization.CultureInfo.InvariantCulture geht es nicht
  • mit Komma geht es.

sorry, alle drei Aussagen sind Quatsch. Zu behaupten, mit einem bestimmten Trennzeichen gehe es oder gehe es nicht, ohne eine Aussage über die Kultur zu machen, oder mit einer bestimmten Kultur gehe es oder gehe es nicht, ohne eine Aussage über das Trennzeichen zu machen, ist zu kurz gesprungen. Trennzeichen und Kultur müssen zusammenpassen, dann und nur geht es!

Und bevor man das Trennzeichen manipuliert, sollte man besser die passende Kultur wählen.

herbivore