Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我对特定转换有一个有趣的问题。当我尝试将字符串"0,3"或"0.3"根据转换UICulture为一个Double值时,结果是0,29999999。为了收到结果,我还没有找到解决方案0,3。
"0,3"
"0.3"
UICulture
Double
0,29999999
0,3
有什么方法可以在转换后获得相同的值?
double 不能代表每个值。它保证代表整数,但仅此而已。如果您需要更像“人类”近似数字的东西,请使用decimal:
double
decimal
decimal val = decimal.Parse("0.3");
注意:decimal 也不能代表每个值 - 但它进行近似的方式往往更像人们期望数字的工作方式。特别double是对于货币之类的东西几乎没有用处。