zl程序教程

您现在的位置是:首页 >  后端

当前栏目

C#小数位数保留的方法集锦

c#方法 保留 集锦 小数位
2023-06-13 09:14:07 时间
1.System.Globalization.NumberFormatInfoprovider=newSystem.Globalization.NumberFormatInfo();
provider.NumberDecimalDigits=intDecLength;//要设定的小数位数
doublestrCashAmt=Convert.ToDouble(this.txtCashAmt.Text);//先把控件?鹊闹底??ouble

this.txtCashAmt.Text=strCashAmt.ToString("N",provider);//再利用ToString函数格式化小数位数

2.保留N位,四舍五入.

decimald=decimal.Round(decimal.Parse("0.55555"),2);

3.保留N位四舍五入

Math.Round(0.55555,2)

4,保留N位四舍五入
doubledbdata=0.55555;
stringstr1=dbdata.ToString("f2");//fN保留N位,四舍五入

5.保留N位四舍五入

stringresult=String.Format("{0:N2}",0.55555);//2位

stringresult=String.Format("{0:N3}",0.55555);//3位

6.保留N位四舍五入(不错)

doubles=0.55555;
result=s.ToString("#0.00");//点后面几个0就保留几位







C#下如果显示保留小数位数,及百分号的解决方法:

1、用NumberFormatInfo类来解决:
System.Globalization.NumberFormatInfoprovider=newSystem.Globalization.NumberFormatInfo();

provider.PercentDecimalDigits=2;//小数点保留几位数.
provider.PercentPositivePattern=2;//百分号出现在何处.
doubleresult=(double)1/3;//一定要用double类型.
Response.Write(result.ToString("P",provider));

2、用toString方法.:
publicstringgetRate(doublehcount,doubletask)
{
stringrValue;
stringtemp="";

if(task==0)
{
task=1;
}

doubledb=(hcount/task)*100;

if(hcount>=task)
{
rValue="100%";
}
else
{
rValue=db.ToString("#0.#0")+"%";
}
returnrValue;
}

stringstr1=String.Format("{0:N1}",56789);//result:56,789.0
stringstr2=String.Format("{0:N2}",56789);//result:56,789.00
stringstr3=String.Format("{0:N3}",56789);//result:56,789.000
stringstr8=String.Format("{0:F1}",56789);//result:56789.0
stringstr9=String.Format("{0:F2}",56789);//result:56789.00
stringstr11=(56789/100.0).ToString("#.##");//result:567.89
stringstr12=(56789/100).ToString("#.##");//result:567