Как выполнить форматирование валюты с интерполяцией строк в c#? - PullRequest
0 голосов
/ 06 мая 2020

Можно ли выполнить форматирование строки с использованием интерполяции строки c# со спецификацией c CultureInfo ?

Например, если вы находитесь в системе en-US и хотите, чтобы число было отформатировано с помощью pt-PT, как мне добиться этого с помощью строковой интерполяции?

Ответы [ 2 ]

3 голосов
/ 06 мая 2020

Вы можете использовать CultureInfo.CreateSpecificCulture для указания языка и региональных параметров и C formatter для преобразования значения в строку с валютой.

double amount = 50.5;
string str = $"{amount.ToString("C", CultureInfo.CreateSpecificCulture("pt-PT"))}";
2 голосов
/ 06 мая 2020

Интерполированные строки могут быть преобразованы в FormattableString s , которые могут быть отформатированы как IFormatProvider:

var formattableString = (FormattableString)$"{1.1:C}";
var result = formattableString.ToString(new CultureInfo("pt-PT"));
// "1,10 €"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...