带有负浮动的字符串浮动? [复制]

Posted

技术标签:

【中文标题】带有负浮动的字符串浮动? [复制]【英文标题】:String with negative float to float? [duplicate] 【发布时间】:2014-08-07 12:49:20 【问题描述】:

这基本上是我的代码:

string text = "-0.05537987";

float value = Single.Parse(text);

当我尝试解析负数时,我得到“输入字符串的格式不正确。”

【问题讨论】:

它对我有用。在 Windows 7 上使用 .NET 4.0 客户端。也许问题出在代码的其他地方? 问题出在别处很抱歉 【参考方案1】:

您的解析应该可以工作,我相信您当前的文化对于小数分隔符有不同的字符。使用CultureInfo.InvariantCulture

float value = Single.Parse(text, CultureInfo.InvariantCulture);

【讨论】:

或者他可以将他的线程文化更改为适当的文化... Thread.CurrentThread.CurrentCulture = new CultureInfo("his-string-format-culture"); @user3740638,你确定你在文本中的值是"-0.05537987" 吗?它应该可以工作。 Ummmmmmmm 我是个白痴。在我的实际代码中,我使用破折号拆分字符串,而否定的破折号拆分字符串并将所有内容都搞砸了。抱歉,感谢您的快速回复。【参考方案2】:

你的代码对我来说很好 - https://dotnetfiddle.net/JfPfss

使用 InvariantCulture 看看是否是问题所在:

float value = Single.Parse(text, CultureInfo.InvariantCulture);

【讨论】:

【参考方案3】:

只需使用 CultureInfo.InvariantCulture

string text = "-0.05537987";
float value = Single.Parse(text, CultureInfo.InvariantCulture);
MessageBox.Show("your value = "+value);

【讨论】:

以上是关于带有负浮动的字符串浮动? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

是否有必要使用带有 <div> 的结束标记来清除浮动? [复制]

Android 蓝牙 LE - 读取浮动特性

浮动两个带有子浮动内容的 div

CSS清除浮动技巧

5月8日上课笔记-浮动float

浮动造成的高度塌陷