в C#, у меня есть двойная переменная цена со значением 10215.24. Я хочу показать цену запятой после некоторых цифр. Мой ожидается выход 10,215.24C#: Форматирование Строка значения цены
ответ
myPrice.ToString("N2");
в зависимости от того, что вы хотите, вы можете также отобразить символ валюты:
myPrice.ToString("C2");
(число после C или N указывает, сколько знаков после запятой следует использовать). (C форматирует номер в виде строки валюты, которая включает символ валюты)
Чтобы быть полностью политически корректным, вы также можете указать CultureInfo, который следует использовать.
Я думаю, что «N2» - это то, что им нужно. –
Разве это не 2 вида дефолта? Так что вам просто нужно 'myPrice.ToString (" N ")'?Не важно, просто любопытно: p – Svish
C2 неверен, потому что отображает валюту –
Я думаю, что это нужно сделать, это:
String.Format("{0:C}", doubleVar);
Если вы не хотите, символ валюты, то просто это сделать:
String.Format("{0:N2}", doubleVar);
Я не думаю, что они хотели символ валюты. –
этот ответ пятно сверху. Однако также можно посмотреть http://msdn.microsoft.com/en-us/library/fht0f5be.aspx для различных типов форматирования. – James
Посмотрите в format strings, в частности "Кукуруза".
double price = 1234.25;
string FormattedPrice = price.ToString("N"); // 1,234.25
В качестве побочного примечания я бы порекомендовал посмотреть на десятичный тип валюты. Это позволяет избежать ошибок округления, которые допускают поплавки, но в отличие от Integer, они могут иметь цифры после десятичной точки.
Действительно. Десятичные числа должны использоваться для вещей, где важна точность. –
В некоторых финансовых приложениях категорически запрещено использовать поплавки, поскольку все округление должно выполняться в установленном порядке. Альтернативой, где тип класса Decimal или BigNumbers недоступен, является использование целых чисел для хранения долей единицы валюты. Так, например, мы могли рассчитывать пенни или его фракции. –
Не правда ли, что ошибки с плавающей запятой изолированы от чипов Intel и совместимых устройств? –
Это может помочь
String.Format("{#,##0.00}", 1243.50); // Outputs “1,243.50″
String.Format("{0:$#,##0.00;($#,##0.00);Zero}", 1243.50); // Outputs “$1,243.50″
String.Format("{0:$#,##0.00;($#,##0.00);Zero}", -1243.50); // Outputs “($1,243.50)″
String.Format("{0:$#,##0.00;($#,##0.00);Zero}", 0); // Outputs “Zero″
Тот, который вы хотите, "N2".
Вот пример:
double dPrice = 29.999988887777666655554444333322221111;
string sPrice = "£" + dPrice.ToString("N2");
Вы могли бы даже так:
string sPrice = "";
if(dPrice < 1)
{
sPrice = ((int)(dPrice * 100)) + "p";
} else
{
sPrice = "£" + dPrice.ToString("N2");
}
, который конденсируется хорошо к этому:
string sPrice = dPrice < 1 ? ((int)(dPrice * 100)).ToString("N0") + "p" : "£" + dPrice.ToString("N2");
Дальнейшее чтение на msdn.microsoft.com/en-us/library/fht0f5be.aspx для различных других типов от
- 1. Форматирование цены, как запятая
- 2. Форматирование евро цены в PHP
- 3. Python печать, строка форматирование
- 4. Добавление/форматирование строка
- 5. Вводное форматирование цены javascript, где неверно
- 6. QString строка/форматирование текста
- 7. Строка Манипуляция и форматирование
- 8. Форматирование моя строка
- 9. org.json.JSONException: Нет значения для цены
- 10. C# Magento API Цены
- 11. Ошибка расчета цены C#
- 12. взрывоопасная строка, у которой нет знака цены
- 13. Форматирование значения даты JSON
- 14. свойство Python и строка форматирование
- 15. iOS Локализованная строка Арабское форматирование
- 16. строка на дату форматирование даты
- 17. HTML вход + форматирование значения даты
- 18. C++ Runtime string форматирование
- 19. Форматирование строк C# decode?
- 20. Сохранять форматирование двойного значения - Java
- 21. Форматирование значения времени
- 22. форматирование sprintf двойного значения
- 23. Форматирование NumPy поплавок значения
- 24. Форматирование значения параметра DSP
- 25. Форматирование значения DATE
- 26. Форматирование значения поплавка
- 27. значения слайдера Форматирование запятыми
- 28. Строка Форматирование на C# для обработки десятичных знаков
- 29. Objective-C поплавка строка форматирования: Форматирование целых чисел
- 30. Форматирование вывода в C++
Ответы, которые вы предложили. ToString («N») хороши. Я просто хочу отметить, что вывод будет зависеть от текущей CultureInfo; Это хорошая вещь. В моей системе (шведский язык) она печатает «10 215,24», что имеет смысл для меня, так как «10 215,24» имеет смысл для вас. Просто имейте в виду, что у вас могут возникнуть проблемы, если вы попытаетесь разобрать эту строку * на DateTime *. –
@Fredrik: Зачем ему разбирать его до * DateTime *? –
Его мозг, вероятно, переключился на среднее предложение: p – Svish