我需要将十进制转换为字符串,在此标尺中:
120.00 - "120"
120.01 - "120.01"
120.50 - "120.50"
答案 0 :(得分:23)
您可以使用decimal.ToString
覆盖来指定格式。
decimal amount = 120.00m;
string str = amount.ToString("0.00");
使用String.Format
时也可以使用。
Console.WriteLine("{0:0.00}", amount);
如果是第一条规则,则不能在一行上完成。
decimal amount = 120.00m;
string str = amount.ToString("0.00").Replace(".00", String.Empty);
答案 1 :(得分:5)
根据需要的格式,decimal.ToString
有不同的重载。
示例
decimal d = 5.00
Console.WriteLine(d.ToString("C")); // for currency
有关其他重载,请参见下文... specifier
是您放入ToString(specifier)
MSDN Documentation on Decimal.ToString
p的小数值= 16325.62m; 字符串说明符;// Use standard numeric format specifiers.
specifier = "G";
Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier));
// Displays: G: 16325.62
specifier = "C";
Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier));
// Displays: C: $16,325.62
specifier = "E04";
Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier));
// Displays: E04: 1.6326E+004
specifier = "F";
Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier));
// Displays: F: 16325.62
specifier = "N";
Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier));
// Displays: N: 16,325.62
specifier = "P";
Console.WriteLine("{0}: {1}", specifier, (value/10000).ToString(specifier));
// Displays: P: 163.26 %
// Use custom numeric format specifiers.
specifier = "0,0.000";
Console.WriteLine("{0}: {1}", specifier, value.ToString(specifier));
// Displays: 0,0.000: 16,325.620
specifier = "#,#.00#;(#,#.00#)";
Console.WriteLine("{0}: {1}", specifier, (value*-1).ToString(specifier));
// Displays: #,#.00#;(#,#.00#): (16,325.62)
答案 2 :(得分:1)
您可以使用decimal.Tostring()
方法
请浏览此more info
的链接答案 3 :(得分:0)
使用decimal.ToString()方法。如果需要,可以使用该方法指定格式:
decimal d = 120.00;
string ds = d.ToString("#,#.00#");
// ds is a formated string of d's value