У меня есть следующий код:
string foo = "blah".PadLeft(4, ' ');
Но когда я проверяю это, вместо того, чтобы быть "____ бла"
(с 4 пробелами в начале), это просто "бла"
. Почему PadLeft не делает то, что я ожидаю?
Потому что первый аргумент — это общая длина результирующей строки , а не количество символов для заполнения. Итак, в вашем примере вы хотите использовать 8 вместо 4.
Первый аргумент функции PadLeft
определяет требуемую общую результирующую длину. Поскольку «бла» начинается с четырех символов, при указании длины четыре не добавляется отступ. Если вы хотите вставить четыре пробела, измените свой вызов на string foo = "blah".PadLft(8, ' ');
Поскольку символ заполнения по умолчанию является пробелом, вы можете не указывать его и просто использовать string foo = "blah".PadLeft(8)