Преобразовать строку удвоить с 2 цифрами после десятичного разделителя

Вы получите большую часть информации как браузер, устройство, принял языки, принятые форматы и т.д. от заголовка запроса. Упомянутый выше агент пользователя является частью заголовка запроса.

5
задан Jon Seigel 18 May 2010 в 03:15
поделиться

2 ответа

Двойные числа не могут точно представлять 16,9. Я предлагаю вам вместо этого преобразовать его в десятичное :

string s = "16.9";
decimal m = Decimal.Parse(s) * 100;

double d = (double)m;

Вы можете просто использовать десятичное вместо double , поскольку вы говорите, что использовать его в денежных целях. Помните, что decimal предназначен для точного представления десятичных чисел, соответствующих его точности, в то время как double будет точно представлять только двоичные числа, которые подходят.

13
ответ дан 18 December 2019 в 11:58
поделиться
Math.Round(number, 1)

Edit Я ошибся вопросом - проблемы с округлением присущи типу с плавающей запятой (float, double). Для этого следует использовать десятичную дробь.

1
ответ дан 18 December 2019 в 11:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: