当前位置: 代码迷 >> ASP.NET >> string类型转float类型的有关问题!
  详细解决方案

string类型转float类型的有关问题!

热度:7314   发布时间:2013-02-25 00:00:00.0
string类型转float类型的问题!急!急!急!
C# code
sales.NowTransactionPrice = Convert.ToSingle(decimal.Parse(Txt_SalesVal.Text));

我要往数据库里面添加一行价格信息,添加1.5之类的数据都没问题。但是,当我添加1.65等之类的数据之后,数据存入数据库变得不准确。求解释!

------解决方案--------------------------------------------------------
不准确是正常的,浮点型的存储很特殊,不是那么的精确,是按照IEEE74标准执行的
------解决方案--------------------------------------------------------
看你那个属性应该是价钱,应该用decimal(数据库对应money)类型,float是近似数
------解决方案--------------------------------------------------------
探讨

不准确是正常的,浮点型的存储很特殊,不是那么的精确,是按照IEEE74标准执行的

------解决方案--------------------------------------------------------
探讨

顶一下,有没有别的办法解决啊!

------解决方案--------------------------------------------------------
保存有效位数。。比如float型数据保留小数点后2位可以写成下面这样

C# code
float a = 999.3599f; //设数值int b = (int)Math.round(a_*100); //小数点后两位前移,并四舍五入float c = (double)b / 100.00; //还原小数点后两位
  相关解决方案