Hallo Leute,
ich habe ein kleines Problem bei einer Typumwandlung. Ich habe eine Stringvariable: wert = 56.788
Diese Vatriable möchte ich jetzt in einer double Variable ablege:
wert2 = Convert.ToDouble(wert);
oder aber auch:
wert2 = double.parse(wert) // vielleicht erklärt mir bei der Gelegenheit gleich mal jemand den Unterschied.
Das Problem ist, dass der Punkt nicht erhalten bleibt. Ich habe also nach der Umwandlung statt dem Wert 56.788 den Wert 56788 in meiner Variable...
Kann mir da jemand weiterhelfen?
Viele Grüße
Christoph
Hast Du irgendwas an der Lokalisierung geschraubt? Hast Du im String testweise mal den Punkt durch ein Komma ersetzt?
/// <summary>
/// Signatur
/// </summary>
Original von Adik
wert2 = Convert.ToDouble(wert);[...]
wert2 = double.parse(wert) // vielleicht erklärt mir bei der Gelegenheit gleich mal jemand den Unterschied.
Bei Convert wird der Wert 0 zurückgegeben wenn das Übergabeargument null ist. Ist dies nicht der Fall wird einfach double.Parse() aufgerufen.
Du kannst aber z.B. auch
wert2 = double.Parse("65.385", System.Globalization.CultureInfo.InvariantCulture);
benutzen. Bei InvariantCulture gilt der "." als Dezimal-Trennzeichen.
([bb]|[^b]{2})
Hallo,
vielen Dank für eure Antworten. Was ist mit Lokalisierung gemeint (Sorry, bin noch ziemlich frisch dabei). Das mit dem Punkt durch Komma ersetzen hatte ich schon getestet - lieferte das gleiche Resultat. Ich werde das mit dem System.Globalization.CultureInfo.InvariantCulture aber mal ausprobieren sobald ich zuhause bin.
Vielen Dank und schöne Grüße
Christoph