Suche…


Syntax

  • @ "verbatim-Zeichenfolgen sind Zeichenfolgen, deren Inhalt nicht mit Escapezeichen versehen ist. In diesem Fall stellt \ n nicht das Zeilenvorschubzeichen, sondern zwei Einzelzeichen dar: \ und n.

  • @ "Um Anführungszeichen zu" ", werden doppelte Anführungszeichen verwendet.

Bemerkungen

Verwenden Sie zum Verketten von String-Literalen das @ -Symbol am Anfang jeder Zeichenfolge.

var combinedString = @"\t means a tab" + @" and \n means a newline";

Mehrzeilige Saiten

var multiLine = @"This is a 

multiline paragraph";

Ausgabe:

Das ist ein

mehrzeiliger Absatz

Live-Demo zu .NET-Geige

Mehrzeilige Zeichenfolgen, die doppelte Anführungszeichen enthalten, können ebenso wie in einer einzelnen Zeile mit Escapezeichen versehen werden, da sie wörtliche Zeichenfolgen sind.

var multilineWithDoubleQuotes = @"I went to a city named

                        ""San Diego""

                      during summer vacation.";

Live-Demo zu .NET-Geige

Es ist zu beachten, dass die Leerzeichen / Tabulierungen am Anfang der Zeilen 2 und 3 hier tatsächlich im Wert der Variablen vorhanden sind; Überprüfen Sie diese Frage nach möglichen Lösungen.

Doppelte Anführungszeichen vermeiden

Doppelte Anführungszeichen innerhalb wörtlich Strings können durch Verwendung von 2 aufeinanderfolgende doppelte Anführungszeichen entgangen sein "" repräsentieren ein doppeltes Anführungszeichen " im String.

var str = @"""I don't think so,"" he said.";
Console.WriteLine(str);

Ausgabe:

"Ich glaube nicht", sagte er.

Live-Demo zu .NET-Geige

Interpolierte verbatim-Zeichenfolgen

Verbatim-Strings können mit den neuen String-Interpolationsfunktionen in C # 6 kombiniert werden.

Console.WriteLine($@"Testing \n 1 2 {5 - 2}
New line");

Ausgabe:

Testen \ n 1 2 3
Neue Zeile

Live-Demo zu .NET-Geige

Wie von einer wörtlichen Zeichenfolge erwartet, werden die Backslashes als Escape-Zeichen ignoriert. Wie von einem interpolierten String erwartet, wird jeder Ausdruck in geschweiften Klammern ausgewertet, bevor er an dieser Position in den String eingefügt wird.

Verbatim-Zeichenfolgen weisen den Compiler an, keine Zeichenumbrüche zu verwenden

In einer normalen Zeichenfolge ist das Backslash-Zeichen das Escape-Zeichen, das den Compiler anweist, die nächsten Zeichen zu suchen, um das tatsächliche Zeichen in der Zeichenfolge zu bestimmen. ( Vollständige Liste der Zeichenfluchten )

In verbatim-Zeichenfolgen gibt es keine Zeichen-Escape-Zeichen (mit Ausnahme von "" das in ein " ). Um eine verbatim-Zeichenfolge zu verwenden, fügen Sie einfach ein @ vor den Anfangsanführungszeichen ein.

Diese wörtliche Zeichenfolge

var filename = @"c:\temp\newfile.txt"

Ausgabe:

c: \ temp \ newfile.txt

Im Gegensatz zur Verwendung einer normalen (nicht wörtlichen) Zeichenfolge:

var filename = "c:\temp\newfile.txt"

das wird ausgeben:

c:    emp
ewfile.txt

mit Zeichenflucht. (Das \t wird durch ein Tabulatorzeichen ersetzt, und das \n wird durch eine neue Zeile ersetzt.)

Live-Demo zu .NET-Geige



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow