我有以下代码:
var str = "ABC";
var n = 7;
var output = String.Format("{0,n}", str);
Run Code Online (Sandbox Code Playgroud)
这应该输出字符串
" ABC"
Run Code Online (Sandbox Code Playgroud)
我该如何更改上面的行?
格式字符串也只是字符串 - 您可以单独定义格式:
int n = 3;
string format = string.Format("{{0,{0}}}", n);
//or more readable: string format = "{0," + n + "}";
var output = string.Format(format, str);
Run Code Online (Sandbox Code Playgroud)
编辑:
更新后看起来你想要的东西也可以通过PadLeft()以下方式实现:
var str = "ABC";
string output = str.PadLeft(7);
Run Code Online (Sandbox Code Playgroud)