Подтвердить что ты не робот

String.Format способ форматирования валюты без центов

Я показываю валюту с использованием текущего метода

String.Format("{0:C}", item.DonationAmount)

Какие выходы вроде $10.00

Мы будем иметь дело с большими суммами в долларах и без центов. Мы хотели бы, чтобы валюта отображалась как 10 долларов без десятичной или нулевой отметки. Как я могу это сделать? Удаление формата валюты делает отображение номера равным 10.0000:( спасибо заранее.

4b9b3361

Ответ 1

Укажите нулевые десятичные знаки:

String.Format("{0:C0}", item.DonationAmount)

Ответ 2

если item.DonationAmount является non-nullable decimal, вы можете просто сделать:

item.DonationAmount.ToString("c0");

если item.DonationAmount является nullable decimal, у которого вы отметили значение, то вы можете сделать следующее:

item.DonationAmount.Value.ToString("c0");

или в более новой версии C#, в которой не требуется проверять, имеет ли она значение:

item.DonationAmount?.ToString("c0");

Ответ 3

  decimal value = 0.00M;
        value = Convert.ToDecimal(12345.12345);
        Console.WriteLine(".ToString(\"C\") Formates With Currency $ Sign");
        Console.WriteLine(value.ToString("C"));
        //OutPut : $12345.12
        Console.WriteLine(value.ToString("C1"));
        //OutPut : $12345.1
        Console.WriteLine(value.ToString("C2"));
        //OutPut : $12345.12
        Console.WriteLine(value.ToString("C3"));
        //OutPut : $12345.123
        Console.WriteLine(value.ToString("C4"));
        //OutPut : $12345.1235
        Console.WriteLine(value.ToString("C5"));
        //OutPut : $12345.12345
        Console.WriteLine(value.ToString("C6"));
        //OutPut : $12345.123450
        Console.WriteLine();
        Console.WriteLine(".ToString(\"F\") Formates With out Currency Sign");
        Console.WriteLine(value.ToString("F"));
        //OutPut : 12345.12
        Console.WriteLine(value.ToString("F1"));
        //OutPut : 12345.1
        Console.WriteLine(value.ToString("F2"));
        //OutPut : 12345.12
        Console.WriteLine(value.ToString("F3"));
        //OutPut : 12345.123
        Console.WriteLine(value.ToString("F4"));
        //OutPut : 12345.1235
        Console.WriteLine(value.ToString("F5"));
        //OutPut : 12345.12345
        Console.WriteLine(value.ToString("F6"));
        //OutPut : 12345.123450

        Console.WriteLine();
        Console.WriteLine(".ToString(\"N\") Formates With out Currency Sign");
        Console.WriteLine(value.ToString("N"));
        //OutPut : 12,345.12
        Console.WriteLine(value.ToString("N1"));
        //OutPut : 12,345.1
        Console.WriteLine(value.ToString("N2"));
        //OutPut : 12,345.12
        Console.WriteLine(value.ToString("N3"));
        //OutPut : 12,345.123
        Console.WriteLine(value.ToString("N4"));
        //OutPut : 12,345.1235
        Console.WriteLine(value.ToString("N5"));
        //OutPut : 12,345.12345
        Console.WriteLine(value.ToString("N6"));
        //OutPut : 12,345.123450

        Console.WriteLine();
        Console.WriteLine(".ToString(\"P\") Formates With Percentage (i.e multiply by 100)");
        Console.WriteLine(value.ToString("P"));
        //OutPut : 1,2345,12.35%
        Console.WriteLine(value.ToString("P1"));
        //OutPut : 1,2345,12.3%
        Console.WriteLine(value.ToString("P2"));
        //OutPut : 12345,12.35%
        Console.WriteLine(value.ToString("P3"));
        //OutPut : 12345,12.345%
        Console.WriteLine(value.ToString("P4"));
        //OutPut : 12345,12.3450%
        Console.WriteLine(value.ToString("P5"));
        //OutPut : 12345,12.34500%
        Console.WriteLine(value.ToString("P6"));
        //OutPut : 12345,12.345000%


        Console.Read();

Нажмите, чтобы увидеть экран Console Out Put

Надеюсь, это поможет вам...

Благодарю. :)