我有一个字符串,它看起来像
3,246,928-
我想要把它变成一个C#的两倍。
是否有将解析这对我来说是负面双预设格式?
我试过了
double parsedValue = Double.Parse("3,246,928-");
并得到了异常“输入字符串的不正确的格式。”
有没有办法做到这一点,而不在最后一个负号手动检查,剥离出来,剥逗号等..?
您可以使用NumberStyles枚举,表示允许在输入串的样式:
var input = "3,246,928-";
var res = Double.Parse(input, NumberStyles.AllowThousands | NumberStyles.AllowTrailingSign);
Console.WriteLine(res); // -3246928
这也可能是改用TryParse
一个好主意:
var input = "3,246,928-";
if (Double.TryParse(input, NumberStyles.AllowThousands | NumberStyles.AllowTrailingSign, null, out var result))
Console.WriteLine(result); // -3246928