Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why double.Parse("0.05") returns 5.0?

I am reading a value from my App.config; which is:

 <add key="someValue" value="0.05"/>

And I try to convert it to double by doing:

 var d = double.Parse(ConfigurationManager.AppSettings["someValue"]);

And I obtain 5.0 insteads of 0.05.

Can you advice? What do I do wrong and how should I parse this?

like image 455
pencilCake Avatar asked Jul 12 '12 15:07

pencilCake


1 Answers

That's for your culture settings, Test the same but with a comma instead a point and you will see that work's

var d = double.Parse("0,05");

To fixed this problem you could used the follow overload of the parse function

var d = double.Parse(ConfigurationManager.AppSettings["someValue"], CultureInfo.InvariantCulture);
like image 128
Jorge Avatar answered Sep 28 '22 12:09

Jorge