2010-01-28 14 views
25
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()); 
} 

Come inserire un nuovo carattere di linea e tabulazione in questo esempio?C#: nuova riga e caratteri di tabulazione nelle stringhe

risposta

39
StringBuilder sb = new StringBuilder(); 
sb.Append("Line 1"); 
sb.Append(System.Environment.NewLine); //Change line 
sb.Append("\t"); //Add tabulation 
sb.Append("Line 2"); 
using (StreamWriter sw = new StreamWriter("example.txt")) 
{ 
    sw.Write(sb.ToString()); 
} 

È possibile trovare dettagliate documentation sulla TAB (e altro carattere di escape qui).

+16

Invece di 'sb.Append (System.Environment.NewLine);' si può usare 'sb.AppendLine();' – vkrzv

+0

Grazie per il commento. Hai ragione, in molti modi è possibile fare lo stesso compito. Buon lavoro su questo. –

+3

Questa piattaforma è indipendente? ad esempio, Environment.Newline è indipendente dalla piattaforma mentre "\ n" non lo è. – Steam

3
sb.Append(Environment.Newline); 
sb.Append("\t"); 
2
sb.AppendLine(); 

o

sb.Append("\n"); 

E

sb.Append("\t"); 
+0

E il più importante è mancante. 'System.Environment.NewLine' è un ** must-know ** dopo aver lasciato questa pagina. – Bitterblue

12

Usa:

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

per una migliore portabilità. Environment.NewLine potrebbe non essere necessariamente \n; Windows usa \r\n, ad esempio.

+2

In realtà, Windows utilizza '\ r \ n' (carriage return + linefeed). – Joshua

+0

Whoops. Grazie Joshua; fisso. –

+0

Questa piattaforma è indipendente? ad esempio, Environment.Newline è indipendente dalla piattaforma mentre "\ n" non lo è. – Steam

3

Dipende se si intende '\ n' (avanzamento riga) o '\ r \ n' (ritorno a capo + avanzamento riga). Il primo non è l'impostazione predefinita di Windows e non verrà visualizzato correttamente in alcuni editor di testo (come Blocco note).

Si può fare

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

o

sb.Append("\r\n\t"); 
0
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/

Problemi correlati