字符串值为"90-"
。为什么十进制将其解析为"-90"
但double
抛出了FormatException
?
var inputValue= "90-";
Console.WriteLine(decimal.Parse(inputValue));
Console.WriteLine(double.Parse(inputValue));
最佳答案
默认情况下,decimal.Parse(string s)
重载使用NumberStyle NumberStyles.Number
进行调用,其定义为:
请注意,包括了AllowTrailingSign
。如果要自定义行为,则应显式调用重载,该重载允许您指定数字样式并根据需要进行调整。
关于c# - 十进制解析问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23297079/