Antworten:
Sie können entweder jedes Mal einen doppelten Backslash verwenden
string foo = "D:\\Projects\\Some\\Kind\\Of\\Pathproblem\\wuhoo.xml";
oder verwenden Sie das @ -Symbol
string foo = @"D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";
Versuche dies:
string foo = @"D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";
Das Problem ist, dass in einer Zeichenfolge a \
ein Escapezeichen ist. Mit dem @
Zeichen weisen Sie den Compiler an, die Escape-Zeichen zu ignorieren.
Sie können auch mit der Flucht auskommen \
:
string foo = "D:\\Projects\\Some\\Kind\\Of\\Pathproblem\\wuhoo.xml";
Wenn Ihre Zeichenfolge wie in Ihrem Beispiel ein Dateipfad ist, können Sie auch Dateipfade im Unix-Stil verwenden:
string foo = "D:/Projects/Some/Kind/Of/Pathproblem/wuhoo.xml";
Die anderen Antworten bieten jedoch allgemeinere Lösungen für das Entkommen von Zeichenfolgen in C #.
string foo = "D:\\Projects\\Some\\Kind\\Of\\Pathproblem\\wuhoo.xml";
Dies wird funktionieren oder die vorherigen Beispiele auch. @ "..." bedeutet, dass Sie alles zwischen den Anführungszeichen wörtlich behandeln, damit Sie es tun können
@"Hello
world"
Einfügen einer wörtlichen Newline. Ich bin eher altmodisch und entkomme lieber "\" mit "\\"