[c#] C#: New line and tab characters in strings

StringBuilder sb = new StringBuilder();
sb.Append("Line 1");
//insert new line character
//insert tab character
sb.Append("Line 2");
using (StreamWriter sw = new StreamWriter("example.txt"))
{
    sq.Write(sb.ToString());
}

How can insert a new line and tab character in this example?

This question is related to c#

The answer is


It depends on if you mean '\n' (linefeed) or '\r\n' (carriage return + linefeed). The former is not the Windows default and will not show properly in some text editors (like Notepad).

You can do

sb.Append(Environment.NewLine);
sb.Append("\t");

or

sb.Append("\r\n\t");

sb.AppendLine();

or

sb.Append( "\n" );

And

sb.Append( "\t" );

sb.Append(Environment.Newline);
sb.Append("\t");

Use:

sb.AppendLine();
sb.Append("\t");

for better portability. Environment.NewLine may not necessarily be \n; Windows uses \r\n, for example.


    StringBuilder SqlScript = new StringBuilder();

    foreach (var file in lstScripts)
    {
        var input = File.ReadAllText(file.FilePath);
        SqlScript.AppendFormat(input, Environment.NewLine);
    }

http://afzal-gujrat.blogspot.com/