这基本上是我的代码:
string text = "-0.05537987";
float value = Single.Parse(text);
当我尝试像我在这里解析一个负数时,我得到“输入字符串的格式不正确。”
答案 0 :(得分:7)
您的解析应该有效,我相信您当前的文化对于小数分隔符有不同的字符。使用CultureInfo.InvariantCulture
float value = Single.Parse(text, CultureInfo.InvariantCulture);
答案 1 :(得分:4)
您的代码可以正常使用 - https://dotnetfiddle.net/JfPfss
使用InvariantCulture并查看是否存在问题:
float value = Single.Parse(text, CultureInfo.InvariantCulture);
答案 2 :(得分:0)
只需使用CultureInfo.InvariantCulture
string text = "-0.05537987";
float value = Single.Parse(text, CultureInfo.InvariantCulture);
MessageBox.Show("your value = "+value);