Как округлить десятичные дроби из строкового ввода и преобразовать в int - PullRequest
0 голосов
/ 23 марта 2012

Я хотел бы, чтобы моя запись текста округляла десятичные дроби и чтобы конечный результат был целым числом. Это то, что у меня есть, но оно не работает. Что было бы самым простым способом сделать это? Спасибо

decimal startMiles = Int32.Parse(txtStartMiles.Text);
startMiles = Math.Round(startMiles);
startMiles = Int32.Parse(startMiles);

1 Ответ

4 голосов
/ 23 марта 2012
int rounded;
string input = "2.53";
decimal startMiles;

if (Decimal.TryParse(input, out startMiles))
{     
    rounded = Convert.ToInt32(startMiles);

    // here is rounded == 3
}

Метод Convert.ToInt32 (Double)

Значение округляется до ближайшего 32-разрядного целого числа со знаком. Если значение на полпути между двумя целыми числами возвращается четное число; то есть 4,5 конвертируется в 4, а 5,5 конвертируется в 6.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...