1 方法一: 2 decimal d= decimal.Round(decimal.Parse("0.55555"),2); 3 方法二: 4 Math.Round(0.55555,2) 5 方法三: 6 double dbdata = 0.55555; 7 string str1 = dbdata.ToString("f2");//fN 保留N位,四舍五入 8 方法四: 9 string result = String.Format("{0:N2}", 0.55555);//2位 10 11 string result = String.Format("{0:N3}", 0.55555);//3位 12 方法五: 13 double s=0.55555; 14 result=s.ToString("#0.00");//点后面几个0就保留几位
1 public string getRate(double hcount, double task) 2 { 3 string rValue; 4 string temp = ""; 5 6 if (task == 0) 7 { 8 task = 1; 9 } 10 11 double db = (hcount / task) * 100; 12 13 if (hcount >= task) 14 { 15 rValue = "100%"; 16 } 17 else 18 { 19 rValue = db.ToString("#0.#0") + "%"; 20 } 21 return rValue; 22 } 23 24 string str1 = String.Format("{0:N1}",56789); //result: 56,789.0 25 string str2 = String.Format("{0:N2}",56789); //result: 56,789.00 26 string str3 = String.Format("{0:N3}",56789); //result: 56,789.000 27 string str8 = String.Format("{0:F1}",56789); //result: 56789.0 28 string str9 = String.Format("{0:F2}",56789); //result: 56789.00 29 string str11 =(56789 / 100.0).ToString("#.##"); //result: 567.89 30 string str12 =(56789 / 100).ToString("#.##"); //result: 567
1 用NumberFormatInfo类来解决: 2 3 System.Globalization.NumberFormatInfo provider = new System.Globalization.NumberFormatInfo(); 4 5 provider.PercentDecimalDigits = 2;//小数点保留几位数. 6 provider.PercentPositivePattern = 2;//百分号出现在何处. 7 double result = (double)1 / 3;//一定要用double类型. 8 Response.Write(result.ToString("P", provider));