c# excel - Kann ich ein Anführungszeichen in einem wortgleichen String-Literal umgehen?




2 Answers

Verwenden Sie ein doppeltes Anführungszeichen.

@"this ""word"" is escaped";

Ausgänge:

this "word" is escaped
sql abap

In einem wortwörtlichen String-Literal (@ "foo") in C # werden Backslashes nicht als Escape-Zeichen behandelt, sodass es nicht funktioniert, ein doppeltes Anführungszeichen zu erhalten. Gibt es eine Möglichkeit, ein Anführungszeichen in einem wortgleichen String-Literal zu erhalten ?

Dies funktioniert verständlicherweise nicht:

string foo = @"this \"word\" is escaped";



Um weitere Informationen hinzuzufügen, wird Ihr Beispiel ohne das @ -Symbol funktionieren (es verhindert das Entkommen mit \), wie folgt:

string foo = "this \"word\" is escaped!";

Es funktioniert in beide Richtungen, aber ich bevorzuge die doppelte Anführungszeichen-Stil, um es einfacher zu arbeiten, zum Beispiel mit Dateinamen (mit vielen \ in der Zeichenfolge).




Related

c# string escaping literals verbatim-string