MorpionMx
Messages postés3466Date d'inscriptionlundi 16 octobre 2000StatutMembreDernière intervention30 octobre 200857 5 déc. 2005 à 21:48
C'est un probleme de culture.
<HR>
CultureInfo ci =
new
CultureInfo(
"fr-FR",
true);
ci.NumberFormat.NumberDecimalSeparator =
".";
System.Threading.
Thread.CurrentThread.CurrentCulture = ci;
double b =
double.Parse(
"10.0"); // La ca marche
<HR>
A noter que si un de tes utilisateurs rentre une valeur avec une virgule, il faudra que tu geres le probleme, a savoir remplacer la virgule par un point avec un tonString = tonString.Replace(',', '.');
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 7 déc. 2005 à 20:56
Mauvaise pratique le remplacement dans la chaine : qu'est ce qui te garantis que l'utilisateur ne vas pas choisir le ';' (par exemple) comme séparateur décimal pour son système ?
Et dans ce cas si il saisit "2;7", il s'agit d'une valeur correcte :-)
Donc il est en général préférable de travailler avec la culture de l'utilisateur.