Нераспознанная escape-последовательность для строки пути, содержащей обратную косую черту

Следующий код генерирует ошибку компилятора о «нераспознанной escape-последовательности» для каждой обратной косой черты:

string foo = "D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";

Полагаю, мне нужно избежать обратной косой черты? Как мне это сделать?

77 голосов | спросил Kjensen 20 AM00000020000000631 2009, 02:01:06

5 ответов


0

Вы можете использовать двойную обратную косую черту каждый раз

string foo = "D:\\Projects\\Some\\Kind\\Of\\Pathproblem\\wuhoo.xml";

или используйте символ @

string foo = @"D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";
ответил Brandon 20 AM00000020000003331 2009, 02:02:33
0

Попробуйте это:

string foo = @"D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";

Проблема в том, что в строке \ является escape-символом. Используя знак @, вы указываете компилятору игнорировать escape-символы.

Вы также можете обойтись путем экранирования \:

string foo = "D:\\Projects\\Some\\Kind\\Of\\Pathproblem\\wuhoo.xml";
ответил Josh 20 AM00000020000000131 2009, 02:02:01
0
var foo = @"D:\Projects\Some\Kind\Of\Pathproblem\wuhoo.xml";
ответил Piotr Czapla 20 AM00000020000004731 2009, 02:01:47
0

Если ваша строка является путем к файлу, как в вашем примере, вы также можете использовать пути к файлам в стиле Unix:

string foo = "D:/Projects/Some/Kind/Of/Pathproblem/wuhoo.xml";

Но другие ответы имеют более общие решения для экранирования строк в C #.

ответил Scott Weinstein 20 AM00000020000000731 2009, 02:07:07
0
string foo = "D:\\Projects\\Some\\Kind\\Of\\Pathproblem\\wuhoo.xml";

Это будет работать, или предыдущие примеры тоже. @ "..." означает буквально трактовать все, что находится между кавычками, так что вы можете сделать

@"Hello
world"

Включить буквальный перевод строки. Я более старая школа и предпочитаю сбежать "\" с помощью "\\"

ответил Bob Kaufman 20 AM00000020000000131 2009, 02:04:01

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132