Feedback

C# - Zeilenumbrüche mit dem OS spezifischen Zeichen ersetzen

Veröffentlicht von am 19.03.2014
(0 Bewertungen)
Windows verwendet CRLF als Zeilenumbruchszeichen. Das entspricht der Escapesequenz \r\n. Trotzdem gibt es in den meisten Fällen keine Probleme einfach nur \n oder \r zu verwenden. Das liegt daran, das Windows auch schon ein solches Zeichen als Zeilenumbruch interpretiert.

Wie gesagt ist es Windows meistens egal, wie man Zeilenumbrüche angibt. Bei API Aufrufen (und eventuell bei anderen Dingen) ist es aber ratsam Zeilenumbrüche richtig zu kodieren.
Die statische Eigenschaft Environment.NewLine stellt das Zeichen bereit, das vom Betriebssystem als Zeilenumbruch verwendet wird. Somit ist es möglich die Zeichenfolge unabhängig vom Betriebssystem zu korrigieren.

Die Methode ist als Erweiterung für String implementiert.
GFU-Schulungen  [Anzeige]

Angular mit ASP.NET Core für .NET-Entwickler

.NET ist Ihnen vertraut, als Entwickler verfügen Sie über einschlägige Kenntnisse. In diesem Kurs lernen Sie nun, Angular in .NET-Umgebungen einzusetzen. Sie verstehen das Konzept von Angular und integrieren das clientseitige JS-Framework sicher in.NET-Anwendungen.

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

/// <summary>
/// Ersetzt Zeilenumbrüche mit dem in dem Betriebssystem verwendeten Zeilenumbruchszeichen.
/// </summary>
/// <param name="s">Die Zeichenfolge deren Zeilenumbrüche ersetzt werden sollen.</param>
/// <returns>Die Zeichenfolge <paramref name="s"/> wobei jeder Zeilenumbruch mit dem Wert von <see cref="System.Environment.NewLine"/> ersetzt wurde.</returns>
public static string ReplaceEnvironmentsNewLine(this string s)
{
    return s.Replace("\r\n", "\n").Replace("\r", "\n").Replace("\n", Environment.NewLine);
}

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!