将Decimal转换为非默认格式的字符串

我需要将十进制转换为字符串,在此标尺中:

120.00 - "120" 120.01 - "120.01" 120.50 - "120.50" 

您可以使用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); 

decimal.ToString有不同的重载基于你想要的格式。

 decimal d = 5.00 Console.WriteLine(d.ToString("C")); // for currency 

请参阅下面的其他重载… specifier是您放入ToString(specifier)

关于Decimal.ToString的MSDN文档

十进制值= 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) 

您可以使用decimal.Tostring()方法

请通过此链接获取更多信息

使用, decimal.ToString()方法。 如果需要,您可以使用该方法指定格式:

 decimal d = 120.00; string ds = d.ToString("#,#.00#"); // ds is a formated string of d's value