Question

Je suis en train de convertir une chaîne à une double valeur, mais ça ne me réélisant ce que j'attends ...

double dbl;
Double.TryParse("20.0", out dbl);

Ce morceau de code est de retour 200,0 (au lieu de 20,0) en tant que valeur double. Toute idée pourquoi?

Était-ce utile?

La solution

Vous devriez passer InvariantCulture à la méthode.

La raison derrière cela est que vos paramètres régionaux probablement mis . comme séparateur et non point décimal.

double.TryParse("20.0", NumberStyles.Any, 
                CultureInfo.InvariantCulture, out x);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top