我做了一个查询到SQL Server通过存储过程来得到一些数据,返回值是这样的:Convert.ToSingle四舍五入
10219150
然后,在组件(我没有源代码该组件的,我所反射的文件以查看代码)有人这样写:
Amount = Convert.ToSingle(10219150); //the value from the stored procedure
所以,当我调用它执行最终转化该方法中,它返回这个值:
1.021315E+7
这怎么可能?为什么Convert.ToSingle添加额外的小数位?我不明白。
当我调用程序集的该方法时,是否有方法可以在我的代码上反转该转换?我不能重写那个程序集文件,因为它太大了,而且,正如我之前提到的,我没有修复转换的源代码。
从这:1.021315E + 7要这样:10219150再次(恢复而没有转化为修正值)
希望我自己清楚。
在此先感谢。
这就是我打印的值:String.Format(“{0:0,0}”,Convert.ToDouble(1.021315E + 7)),在正面看起来像这样:10.219.150.000.000 ??我从来没有使用过Convert.ToSingle,所以这就是为什么我不明白这种行为。 – lidermin 2010-02-12 12:43:43
非常感谢!你让我今天一整天都感觉很好。 – lidermin 2010-02-12 13:25:10