我想这样 不知道 能不能
使用 SUBSTRING ()
使用 LASTINDEXOF(“。”)检索到 小数点的 位置的索引号 然后 以索引号 + (你所要的 小数点后的位数) 如50.01 和 50.01003 小数点的位置在 2 开始 检索 从 0到 4 就可以的出 5001 和 5001 就可以确定 它们相等了
使用 SUBSTRING ()
使用 LASTINDEXOF(“。”)检索到 小数点的 位置的索引号 然后 以索引号 + (你所要的 小数点后的位数) 如50.01 和 50.01003 小数点的位置在 2 开始 检索 从 0到 4 就可以的出 5001 和 5001 就可以确定 它们相等了
strNo10=Math.Round(double.Parse(strNo10),2).ToString()
MessageBox.Show(string.Format("f1:\t{0}\nf2:\t{1}\n", f.ToString("f2"), f.ToString("f4"))); float f1 = float.Parse(f.ToString("f1"));
注意Round是奇进偶舍,如果是四舍五入,再加个.000001再取四舍五入
i += 0.0005;
然后通过字符串处理取小数点后3位就可以啦!
在提供一种方法,有点蛇足
using System.Globalization; NumberFormatInfo nfi = new CultureInfo("zh-CN", false).NumberFormat;
nfi.CurrencyDecimalDigits = 3;//保留三位Double.Parse(myDataRow("Total")).ToString( "N", nfi ) ;
:)