String.Format Flucht VB vs C #
-
29-09-2019 - |
Frage
Während der Suche, wie man ein Apostroph in String.Format zu entkommen, fand ich die Antwort auf
Lösung In C # Stringliterale können Escape-Sequenzen enthalten, wie \ n für eine neue Zeile oder \ t für eine Registerkarte oder \“für ein Angebot. Wenn Sie brauchen nicht die Flucht, können Sie die wörtliche Präfix kann mit @ (zB :. In VB Flucht nie erlaubt ist, so gibt es keine Notwendigkeit, den Backslash zu entkommen. @"MMM ..."
) und VB die gleiche Zeichenfolge erhalten
Andere Tipps
Der Grund dafür ist, dass C # unterstützt Sequenzen innerhalb Stringliterale über den \
Charakter entkommen. VB hat keine solche Mechanismen zu entkommen und damit die einzigen \
als \
interpretted.
In C # können Sie das gleiche Verhalten erhalten, indem Sie wörtlich Strings
@"MMM d \'yy 'at' H:mmm"
In C # hat die Backslash eine Bedeutung (\ n Newline \ t Register ....). So backlslahs itselft ist ein Escape-Zeichen - die Sie zu entkommen haben :) Oder legen Sie ein AT-Zeichen vor dem String - das macht eine „nicht maskierten String“ (in der Regel für Pfade verwendet wird)
In c # \ entweicht. Ihr Text wird "MMM d \ 'yy 'auf' H: mmm". Sie können als "Zeichen in einer Zeichenfolge entkommen müssen. Wenn Sie sind zu verwenden, „auf der anderen Seite in der Zeichenfolge, würden Sie sie entkommen müssen, um nicht die Zeichenfolge zu beenden‚MMM d \‘yy \“ auf \ „H: mmm“. Oder Sie könnten auch die Verwendung @ „“ String-Methode, die automatisch Zeichen für Sie entkommen (nicht „obwohl). So schreiben Sie könnten @“ Dies wird nicht \ n sein, zwei Zeilen "