如何在中添加新行(\ n \ r)字符StringBuilder
?
Answers:
就像是:
StringBuilder sb = new StringBuilder();
sb.AppendFormat("Foo{0}Bar", Environment.NewLine);
string s = sb.ToString();
要么
StringBuilder sb = new StringBuilder();
sb.Append("Foo");
sb.Append("Foo2");
sb.Append(Environment.NewLine);
sb.Append("Bar");
string s = sb.ToString();
如果您希望在每次追加之后添加新行,可以查看Ben Voigt的答案。
AppendLine
在StreamWriter 上使用,然后它将插入适用于该特定字符的换行符序列StreamWriter
,而不仅仅是Environment.NewLine
。例如,如果打开绑定到SMTP连接的流,则可以将其NewLine
属性设置为“ \ r \ n”,即使在Unix上,也可以获得有效的SMTP握手。
StringBuilder sb = new StringBuilder();
您可以使用sb.AppendLine()或sb.Append(Environment.NewLine) ;
对于多行,我发现的最佳方法是执行以下操作:
IEnumerable<string> lines = new List<string>
{
string.Format("{{ line with formatting... {0} }}", id),
"line 2",
"line 3"
};
StringBuilder sb = new StringBuilder();
foreach(var line in lines)
sb.AppendLine(line);
这样,您不必通过多次重复执行Environment.NewLine或AppendLine()来使屏幕混乱。与必须记住键入它们相比,它也更容易出错。