当我从 sql server 获取资金字段到 vb.net 代码时,我总是得到 1.0000 而不是 1.00。如何在 vb.net 中将其转换为 1.00?
TD = New HtmlTableCell
If Not SqlDR("Price") Is DBNull.Value Then
TD.InnerHtml = SqlDR("Price")
Else
TD.InnerHtml = "0.00"
End If
SQLDR 是我的 sql 数据阅读器
这是因为 SQL Server 使用 4 位小数存储 MONEY 字段。要使用 2 查看它,请使用String.Format方法。
String.Format("{0:c}", 10) ''result: $10.00
String.Format("{0:N2}", 10) ''result: 10.00
有关格式化数字的更多方法,请参阅这些页面
输出时需要格式化数据:
myMoney.ToString("0.00");
您确定没有将值的显示与实际值混淆吗?
1.0000 和 1.00 是相同的值。
如果您想在将值转换为字符串时仅显示一定数量的位置,您应该查看MSDN 文档中的自定义数字格式字符串部分,以找出要传递给 Decimal、Double 上的 ToString 方法的格式字符串,单个结构,或 String 类的静态 Format 方法。