将字符串解析为浮点数

本文关键字:浮点数 字符串 | 更新日期: 2023-09-27 18:34:25

我正在尝试解析一个字符串以浮点并将其添加到 SqlParameter 中。当我输入1234567890时,它作为1234567936保存在数据库中。我还看到它在调试中转换为 1.234568E+9。由于数据库接受浮点数,因此我无法将其转换为双精度。

com.Parameters.Add(new SqlParameter("Awb", SqlDbType.Float)).Value = float.Parse(txtAwb.Text);

解决方案:看起来我必须在数据库中使用另一种数据类型。浮点值不能容纳具有许多数字的数字。我正在处理一个旧数据库,所以我会考虑其他事情。

将字符串解析为浮点数

浮点值的精度有限...这是有限数量的有效数字

如果需要准确存储较大的值,则需要在数据库中使用不同的字段类型。货币换钱,或者可能是大非小数值的整数。

基本上,浮点数无法将那么大的数字保持在您想要的精度。

这是关于浮点的所有 C# 内容

float.Parse(value)应该做你想做的事

不幸的是,当您使用 float 时,您不能获得超过 7 个有价值的数字。请考虑使用其他数据类型。