C# точка вместо запятой?

  • Автор темы Автор темы PROforum
  • Дата начала Дата начала

PROforum

Client
Регистрация
17.08.2014
Сообщения
252
Реакции
19
Баллы
18
Здравствуйте.
Есть такой код:
return System.Math.Round(Convert.ToDouble(project.Variables["test"].Value.Replace(".",",")), 3);
он округляет дробное число до 3-го знака и ставит запятую. Можно ли сделать в этом же кубике чтоб вместо запятой ставилясь точка?
 
C#:
Развернуть Свернуть Копировать
return System.Math.Round(
    double.Parse(project.Variables["test"].Value,
    System.Globalization.NumberStyles.Any,
    System.Globalization.CultureInfo.InvariantCulture
), 3).ToString(System.Globalization.CultureInfo.InvariantCulture);
 
Последнее редактирование:
  • Оценить
Реакции: Jufel и RoyalBank
Спасибо так отлично работает
 
Ваш код отлично работает. Можете написать код который не округляет , а обрезает все цифры после третьей после запятой и также чтоб вместо запятой была точка
пример 0.5658998 - 0.565
Заранее спасибо
 
Ваш код отлично работает. Можете написать код который не округляет , а обрезает все цифры после третьей после запятой и также чтоб вместо запятой была точка
пример 0.5658998 - 0.565
Заранее спасибо

C#:
Развернуть Свернуть Копировать
string str = project.Variables["number"].Value.Replace(".",",").Trim().Substring(0, 5); // переменная number в которой значение 0.5658998
project.Variables["result"].Value = str.Replace(",","."); // в переменной result будет результат 0.565
 
Ваш код отлично работает. Можете написать код который не округляет , а обрезает все цифры после третьей после запятой и также чтоб вместо запятой была точка
пример 0.5658998 - 0.565
Заранее спасибо

C#:
Развернуть Свернуть Копировать
string str = project.Variables["number"].Value.Replace(".",",").Trim().Substring(0, 5); // переменная number в которой значение 0.5658998
project.Variables["result"].Value = str.Replace(",","."); // в переменной result будет результат 0.565

К сожалению ваш код обрезает числа не начиная после точки, а с начала
0.56885-0.568
10.56885-10.56
и тд
 
К сожалению ваш код обрезает числа не начиная после точки, а с начала
0.56885-0.568
10.56885-10.56
и тд

C#:
Развернуть Свернуть Копировать
string str = project.Variables["number"].Value.Replace(".",",").Trim();
string ToDelimiter = str.Split(',')[0];
string AfterTheSeparator = str.Split(',')[1];
string Pruning = AfterTheSeparator.Substring(0, 3);
project.Variables["result"].Value = ToDelimiter + "." + Pruning;
 
  • Оценить
Реакции: PROforum
Спасибо! Отлично работает.
 
C#:
Развернуть Свернуть Копировать
return System.Math.Round(double.Parse(project.Variables["test"].Value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture), 3).ToString(System.Globalization.CultureInfo.InvariantCulture);
Подскажи как в переменой поменять точку на запятую ?
 
  • Оценить
Реакции: prostors и SlaVka

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)