C# - 单个转换的错误字符串

时间:2016-09-26 06:49:59

标签: c# .net

我正在编写一个程序,用于将数据从微控制器传输到PC。数据采用浮点格式。我尝试使用<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="link">Click me</div>将字符串转换为float,但转换结果错误:

  1. &#34; 0.11&#34;转换为11,有时为12。
  2. &#34; 0.10&#34;转换为10. etc
  3. 正如你所看到的,它正在失去领先的0,这是出乎意料的。怎么会发生这种情况?

1 个答案:

答案 0 :(得分:3)

您的问题是针对特定文化的。在某些文化中,浮点数用,分隔,有些则用.

分隔

在你的情况下

String a = "0,11";
Convert.ToSingle(a)

应该得到你想要的结果0,11。

因此,您应该指定您的文化或使其不变,以便可以接受这两种可能性。

尝试以下方法:

Convert.ToSingle(a, CultureInfo.InvariantCulture)