本文实例讲述了C#小数点格式化用法。分享给大家供大家参考,具体如下:
1.ToString()方法
1
2
3
|
double
d=12345678.2334;
Console.WriteLine(d.ToString(
"F2"
));
//1234.23
Console.WriteLine(d.ToString(
"###,###.00"
));
//12,345,678.23
|
2.Math.Round()方法
1
2
3
4
5
6
7
8
9
10
|
Math.Round(3.44, 1);
//Returns 3.4.
Math.Round(3.45, 1);
//Returns 3.4.
Math.Round(3.46, 1);
//Returns 3.5.
Math.Round(3.445, 1);
//Returns 3.4.
Math.Round(3.455, 1);
//Returns 3.5.
Math.Round(3.465, 1);
//Returns 3.5.
Math.Round(3.450, 1);
//Returns 3.4.(补0是无效的)
Math.Round(3.4452, 2);
//Returns 3.45.
Math.Round(3.4552, 2);
//Returns 3.46.
Math.Round(3.4652, 2);
//Returns 3.47.
|
"四舍六入五考虑,五后非零就进一,五后皆零看奇偶,五前为偶应舍 去,五前为奇要进一"
短一点的口诀叫“四舍、六入、五凑偶”
3.double.Parse()方法
1
2
|
double
d=1.12345;
d=
double
.Parse(d.ToString(
"0.00"
));
//1.12
|
4.输出百分号
1
2
3
4
5
6
7
|
System.Globalization.NumberFormatInfo provider =
new
System.Globalization.NumberFormatInfo();
provider.PercentDecimalDigits = 2;
//小数点保留几位数.
provider.PercentPositivePattern = 1;
//百分号出现在何处.
double
result = (
double
)1 / 3;
//一定要用double类型.
Console.WriteLine(result.ToString(
"P"
, provider));
//33.33%
//或
Console.WriteLine((result*100).ToString(
"#0.#0"
)+
"%"
);
|
5.String.Format()方法
1
2
3
4
5
6
7
|
string
str1 = String.Format(
"{0:N1}"
,56789);
//result: 56,789.0
string
str2 = String.Format(
"{0:N2}"
,56789);
//result: 56,789.00
string
str3 = String.Format(
"{0:N3}"
,56789);
//result: 56,789.000
string
str8 = String.Format(
"{0:F1}"
,56789);
//result: 56789.0
string
str9 = String.Format(
"{0:F2}"
,56789);
//result: 56789.00
string
str11 =(56789 / 100.0).ToString(
"#.##"
);
//result: 567.89
string
str12 =(56789 / 100).ToString(
"#.##"
);
//result: 567
|