转:http://www.myexception.cn/asp-dotnet/89080.html
double d=1.234;
long a=(long)d;
long temp=(long)((d-a)*100);
------解决方案--------------------
Decimal Dec=Convert.ToDecimal(str)//将字符串转为Decimal型
str=Decimal.Round(Dec,2).ToString() // 取小数点后2位,再转为字符串
string类型没有Round方法,所以要转换类型
------解决方案--------------------
1.只要求保留N位不四舍5入
float f = 0.55555f;
int i =(int)(f * 100);
f = (float)(i*1.0)/100;
2.保留N位,四舍五入 .
decimal d= decimal.Round(decimal.Parse( "0.55555 "),2);
3.保留N位四舍五入
Math.Round(0.55555,2)
4,保留N位四舍五入
double dbdata = 0.55555;
string str1 = dbdata.ToString( "f2 ");//fN 保留N位,四舍五入
5.保留N位四舍五入
string result = String.Format( "{0:N2} ", 0.55555);//2位
string result = String.Format( "{0:N3} ", 0.55555);//3位
6. 保留N位四舍五入
double s=0.55555;
result=s.ToString( "#0.00 ");//点后面几个0就保留几位
正则表达式保留小数点2位
function checkValue(currentElement, type) { switch(type){ case 'positiveInt': var pattern = /^[1-9]d*$/; break; case 'decimal': var pattern = /^d+.?d*$/; break; case 'decimal_two': var pattern = /^d+(?:.d{0,2})?$/; break; default : var pattern = /^[1-9]d*$/; } if(!$(currentElement).val().match(pattern)){ $(currentElement).val(''); } }