Ari*_*MAZ 0 c# casting decimal
我试图将2.3449转换为十进制,但它转换为23449,0
我正在转换它如下
string temp = "2.3449";
decimal value_ = Convert.ToDecimal(temp);
Run Code Online (Sandbox Code Playgroud)
如果我用COLON替换DOT,它会完美地转换它.但是,我不想用字符串中的COLON替换DOT.没有替换的转换的好方法是什么.
您的文化视为.千位分隔符,而不是小数点分隔符.
您始终可以使用特定的文化:
var val = decimal.Parse(temp, CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
同样的情况ToString- 如果你想用.小数分隔符打印数字,只需使用适当的文化.不过,本地文化(默认)通常是面向用户的最佳选择.不变文化非常适合坚持:)