c#删除0到INR货币转换的尾随?

时间:2017-04-07 04:39:42

标签: c#

我使用以下代码将输入转换为INR中的逗号分隔字符串:

decimal input = 1111111111.59m;
string result = input.ToString("C", new CultureInfo("EN-in"));

我想现在删除尾随的0,我该怎么做?

例如:

decimal input = 1111111111.00m;
Output should be 1111111111

4 个答案:

答案 0 :(得分:2)

string result = input.ToString(“c0”,new CultureInfo(“EN-in”));

<强>更新

因此,您希望输入123.45输出“123.45”,输入123.00输出“123”。 没有条件运算符,您无法实现这两种不同的格式,String.Format()将只为您生成一种输出格式。

代码很简单:

string format = Decimal.Round(input) == input ? "c0" : "c";
string output = input.ToString(format);

答案 1 :(得分:0)

string output = input.ToString("0");

答案 2 :(得分:0)

以下代码应该有效:

string results = input.ToString("0.##");

答案 3 :(得分:0)

转换最简单的方法是转换为int。

int d = convert.toInt32(1111.00);

或使用建议的任何数学函数。

How to remove decimal part from a number in C#

How do I format a C# decimal to remove extra following 0's?

修改 据我所知,试试

Console.WriteLine(d.ToString("0.#####"));

设置此网址: - Best way to display decimal without trailing zeroes