Mar*_*nze 9 c# string indentation
我需要缩进多行文本(与单行文本的这个问题形成对比).
让我们说这是我的输入文字:
First line
Second line
Last line
Run Code Online (Sandbox Code Playgroud)
我需要的是这个结果:
First line
Second line
Last line
Run Code Online (Sandbox Code Playgroud)
注意每行中的缩进.
这是我到目前为止:
var textToIndent = @"First line
Second line
Last line.";
var splittedText = textToIndent.Split(new string[] {Environment.NewLine}, StringSplitOptions.None);
var indentAmount = 4;
var indent = new string(' ', indentAmount);
var sb = new StringBuilder();
foreach (var line in splittedText) {
sb.Append(indent);
sb.AppendLine(line);
}
var result = sb.ToString();
Run Code Online (Sandbox Code Playgroud)
有更安全/更简单的方法吗?
我关注的是split方法,如果转移来自Linux,Mac或Windows的文本,并且新行可能无法在目标计算机中正确拆分,则可能会很棘手.
Who*_*ich 17
既然你要缩进所有的行,那么做如下的事情:
var result = indent + textToIndent.Replace("\n", "\n" + indent);
Run Code Online (Sandbox Code Playgroud)
哪个应涵盖Windows\r \n和Unix \n行尾.
| 归档时间: |
|
| 查看次数: |
6928 次 |
| 最近记录: |