为什么PadLeft不工作?

RCI*_*CIX 11 .net string padding

我有以下代码:

string foo = "blah".PadLeft(4, ' ');
Run Code Online (Sandbox Code Playgroud)

但是当我检查它时,而不是foo "____blah"(在开始时有4个空格),它只是"blah".为什么PadLeft没有做我期望的事情?

Bri*_*sen 19

因为第一个参数是结果字符串的总长度而不是填充字符的数量.因此,在您的示例中,您希望使用8而不是4.

  • @RCIX:这是非常聪明的行为,因为pad的最常见用途是创建一个修复长度字符串,然后它使用起来非常简单,无需自己计算长度. (4认同)
  • 呃,好吧......那是奇怪的行为,至少对我来说......谢谢你的帮助:) (3认同)