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

Два десятичных разряда с использованием С#

decimal Debitvalue = 1156.547m;

decimal DEBITAMT = Convert.ToDecimal(string.Format("{0:0.00}", Debitvalue));

Мне нужно получить только два десятичных знака, но, используя этот код, я получаю 1156.547. Дайте мне знать, какой формат я должен использовать для отображения двух знаков после запятой.

4b9b3361

Ответ 1

Если вы хотите округлить десятичное число, посмотрите Math.Round()

Ответ 2

В вашем вопросе предлагается отображать два десятичных знака. Использование следующего String.format поможет:

String.Format("{0:.##}", Debitvalue)

это отобразит тогда число с двумя десятичными знаками.

Или, если вы хотите, чтобы отображаемый символ валюты использовал следующее:

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

Ответ 3

Используйте Math.Round() для округления до двух знаков после запятой

decimal DEBITAMT = Math.Round(1156.547m, 2);

Ответ 4

Я использую

decimal Debitvalue = 1156.547m;
decimal DEBITAMT = Convert.ToDecimal(string.Format("{0:F2}", Debitvalue));

Ответ 5

Лучший подход, если вы хотите, чтобы ВСЕГДА показывали два десятичных знака (даже если ваш номер имеет только одно десятичное место), следует использовать

yournumber.ToString("0.00");

Ответ 6

вот еще один подход

decimal decimalRounded = Decimal.Parse(Debitvalue.ToString("0.00"));

Ответ 7

Для отображения только свойства String могут использоваться как следующие.

double value = 123.456789;
String.Format("{0:0.00}", value);

Использование System.Math.Round. Это значение может быть присвоено другим лицам или, при необходимости, управлять им.

double value = 123.456789;
System.Math.Round(value, 2);

Ответ 8

Другой способ:

decimal.Round(десятичное значение, 2, MidpointRounding.AwayFromZero);

Ответ 10

Возможно, это вариант других примеров, но я использую этот метод, чтобы убедиться, что перед десятичными точками отображается точка, а не запятая:

someValue.ToString("0.00", CultureInfo.InvariantCulture)

Ответ 11

Если кто-то ищет способ отображения десятичных знаков, даже если он заканчивается на ".00", используйте это:

String.Format("{0:n1}", value)

Ссылка:

Если кто-то ищет способ отображения десятичных знаков, даже если он заканчивается на ".00", используйте это:

String.Format("{0:n1}", value)

Ссылка:

https://docs.microsoft.com/pt-br/dotnet/standard/base-types/standard-numeric-format-strings#the-numeric-n-format-specifier