practices new example best c# stringbuilder

new - stringbuilder list c#



Carácter Newline en stringbuilder (8)

¿Cómo añades un nuevo carácter de línea (/ n / r) en StringBuilder ?


Esto es lo que uso,

StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append("Some string 1" + "/n"); stringBuilder.Append("Some string 2" + "/n");


Haría uso de la propiedad Environment.NewLine

Algo como

StringBuilder sb = new StringBuilder(); sb.AppendFormat("Foo{0}Bar", Environment.NewLine); string s = sb.ToString();

O

StringBuilder sb = new StringBuilder(); sb.Append("Foo"); sb.Append("Foo2"); sb.Append(Environment.NewLine); sb.Append("Bar"); string s = sb.ToString();

EDITAR:

Si desea tener una nueva línea después de cada anexión, puede echarle un vistazo a la respuesta de @Ben Voigt .


Para líneas múltiples, la mejor manera que encuentro es hacer esto:

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);

De esta forma, no tiene que saturar la pantalla con Environment.NewLine o AppendLine () repetidas varias veces. También será menos propenso a errores que tener que recordar escribirlos.


Se agregará /n en Linux en su lugar /r/n .


También este trabajo

sb.Append(string.Format("Foo{0}Bar", Environment.NewLine));


Utilice el constructor de cadenas para agregar líneas a las funciones incorporadas

StringBuilder sb = new StringBuilder(); sb.AppendLine("first line "); sb.AppendLine("Second line "); sb.AppendLine("third line ");

salida

primera línea tercera línea tercera línea