Kann ich ein doppeltes Anführungszeichen in einem wörtlich Stringliteral entkommen?
-
20-09-2019 - |
Frage
In einer wörtlich Stringliteral (@ „foo“) in C #, sind Schrägstriche nicht als Fluchten behandelt, so tut \“doppelte Anführungszeichen bekommen funktioniert nicht. Gibt es eine Möglichkeit, ein doppeltes Anführungszeichen in einem bekommen wörtlich Stringliteral?
Das verständlicherweise nicht funktioniert:
string foo = @"this \"word\" is escaped";
Lösung
Verwenden Sie eine duplizierte doppelte Anführungszeichen.
@"this ""word"" is escaped";
Ausgänge:
this "word" is escaped
Andere Tipps
Verwenden Sie doppelte Anführungszeichen.
string foo = @"this ""word"" is escaped";
Für die Zugabe von etwas mehr Informationen, Ihr Beispiel wird ohne @
Symbol arbeiten (es verhindert mit \ Flucht), auf diese Weise:
string foo = "this \"word\" is escaped!";
Es wird in beiden Richtungen arbeiten, aber ich lieber den doppelten Anführungszeichen Stil für sie leichter zu funktionieren, zum Beispiel mit Dateinamen (mit viel \ im String).
Dies sollte helfen, Fragen zu klären Sie haben können: c # Literale
Hier ist eine Tabelle aus dem verknüpften Inhalt:
eingeben