Подтвердить что ты не робот

Использование С# String.Format "{0: p0}" без начального пробела до знака процента

Используя выражение

String.Format("{0:p0}",0.10) gives 10 %

Как мне вернуть это значение 10% (без пробела между 10 и%)?

Культура: en-GB

4b9b3361

Ответ 1

String.Format("{0:0%}", 0.10)

Ответ 2

Используйте свойство NumberFormatInfo.PercentPositivePattern:

NumberFormatInfo numberInfo = new NumberFormatInfo();
numberInfo.PercentPositivePattern = 1;
Console.WriteLine(String.Format("{0}", 0.10.ToString("P0",numberInfo)));

Ответ 3

Если вы в порядке, не используя Format(), вы можете сделать 0.10F.ToString("0%");.

Ответ 4

Только усиление ответа @Jay Riggs, и потому, что у меня нет достаточной репутации, чтобы просто комментировать, я бы пошел с:

String.Format(numberInfo, "{0:p0}", 0.10);

Я так думаю, вы освещаете ситуации, когда вам нужно форматировать более одного значения:

String.Format(numberInfo, "{0:p0} {1:p0}", 0.10, 0.20);

Ответ 5

String.Format("{0:p0}",0.10).Replace(" ","");

Ответ 7

Попробуйте это вместо:

0.1.ToString( "0%" )

Ответ 8

Измените информацию о культуре.

Для некоторых культур он отображает% 10,% 10, 10%, 10%,.1,.10, 0.1, 0.10...

Я проверю, какая CultureInfo дает вам "10%"