首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

float类型数据转成string类型后 精度减弱,该如何解决

2012-03-03 
float类型数据转成string类型后 精度减弱问题原形是asp.net上的欠款提示,发现float类型数据转成string类型

float类型数据转成string类型后 精度减弱
问题原形是asp.net上的欠款提示,发现float类型数据转成string类型后精度度减弱,在Console下试了一下也有这个问题。
在代码如下:
float   money1   =   12345678;
string   strMoney1   =   Convert.ToString(money1);
Console.WriteLine(money1);
Console.WriteLine(strMoney1);

执行结果都是:1.234568E+07
我想保证精确度不变,各位大虾有什么办法啊?


[解决办法]
用decimal指定精度
[解决办法]
使用 "R "做格式化保证string可以Parse成和原先浮点数相等:

float money1 = 12345678.1234567;
string strMoney1 = money1.ToString( "r ");
Console.WriteLine( "{0:r} ", money1);
Console.WriteLine(strMoney1);

热点排行