Дословная строка
Литерал @"..." - дословный: обратный
слэш не начинает escape-последовательность.
Кавычку внутри пишут удвоением - "".
Так удобно задавать пути Windows и текст
со слэшами без удвоения \, как в
обычной строке.
Синтаксис
@"текст"
@"текст ""в кавычках"" текст"
Пример
Давайте выведем строку "abcde" через
дословный литерал:
using System;
class Program
{
static void Main()
{
Console.WriteLine(@"abcde");
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте выведем текст со слэшем - он не превращается в escape:
using System;
class Program
{
static void Main()
{
Console.WriteLine(@"a\b");
}
}
Результат выполнения кода:
"a\b"
Пример
Давайте вставим кавычки вокруг слова через
удвоение "":
using System;
class Program
{
static void Main()
{
Console.WriteLine(@"say ""abcde""");
}
}
Результат выполнения кода:
"say "abcde""
Пример
Давайте запишем путь с обратными слэшами без удвоения:
using System;
class Program
{
static void Main()
{
string path = @"data\logs\file.txt";
Console.WriteLine(path);
}
}
Результат выполнения кода:
"data\logs\file.txt"
Смотрите также
-
экранирование строк,
которое задаёт спецсимволы в обычном литерале -
сырая строка,
которая хранит многострочный текст -
интерполяция строк,
которая сочетается с$@ -
UTF-8 литерал,
который даёт байты текста в UTF-8