如何以编程方式在C#中创建字符串?

Not*_*Dan 6 c#

我有一个字符串,我想基于一个int变量在该字符串的开头添加一些空格.
我想做这样的事情:

int NumberOfTabs = 2;
string line = "my line";
string line = String.Format("{0}{1}", "    " * NumberOfTabs, line);
Run Code Online (Sandbox Code Playgroud)

...现在行将有8个空格

最简单的方法是什么?

Nic*_*ver 18

您可以使用String(char,Int32)构造函数,如下所示:

string line = String.Format("{0}{1}", new String(' ', NumberofTabs * 4), line);
Run Code Online (Sandbox Code Playgroud)

或者更有效率:

string line = String.Concat(new String(' ', NumberofTabs * 4), line);
Run Code Online (Sandbox Code Playgroud)

或者,更简洁一点:)

string line = new String(' ', NumberofTabs * 4).Concat(line);
Run Code Online (Sandbox Code Playgroud)

评论提出了一个很好的观点,如果你想要实际拥有制表符,只需更改' 'to '\t'并取出* 4如下:

string line = String.Concat(new String('\t', NumberofTabs), line);
Run Code Online (Sandbox Code Playgroud)


Chr*_*all 8

int i=8;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append(" ", i);
Run Code Online (Sandbox Code Playgroud)


Cod*_*ism 6

new string(' ', NumberOfTabs )
Run Code Online (Sandbox Code Playgroud)