Строки (Руководство по программированию на C#)
Правильные и буквальные строковые литералы
Правильные строковые литералы используются, если нужно внедрить escape-символы, предоставляемые языком C#, как показано в следующем примере.
string columns = "Column 1\tColumn 2\tColumn 3"; //Output: Column 1 Column 2 Column 3 string rows = "Row 1\r\nRow 2\r\nRow 3"; /* Output: Row 1 Row 2 Row 3 */ string title = "\"The \u00C6olean Harp\", by Samuel Taylor Coleridge"; //Output: "The Æolean Harp", by Samuel Taylor Coleridge
string filePath = @"C:\Users\scoleridge\Documents\"; //Output: C:\Users\scoleridge\Documents\ string text = @"My pensive SARA ! thy soft cheek reclined Thus on mine arm, most soothing sweet it is To sit beside our Cot,..."; /* Output: My pensive SARA ! thy soft cheek reclined Thus on mine arm, most soothing sweet it is To sit beside our Cot,... */ string quote = @"Her name was ""Sara."""; //Output: Her name was "Sara."
Escape-последовательности строк
Escape-последовательность |
Имя символа |
Кодировка Юникода |
---|---|---|
\' |
Одинарная кавычка |
0x0027 |
\" |
Двойная кавычка |
0x0022 |
\\ |
Обратная косая черта |
0x005C |
\0 |
Null |
0x0000 |
\a |
Звуковой сигнал (звонок) |
0x0007 |
\b |
Удаление предыдущего символа |
0x0008 |
\f |
Подача страницы (для перехода к началу следующей страницы) |
0x000C |
\n |
Новая строка |
0x000A |
\r |
Возврат каретки |
0x000D |
\t |
Горизонтальная табуляция |
0x0009 |
\U |
Escape-последовательность Юникода для пар символов-заместителей. |
\Unnnnnnnn |
\u |
Escape-последовательность Юникода |
\u0041 = "A" |
\v |
Вертикальная табуляция |
0x000B |
\x |
Escape-последовательность Юникода аналогична "\u", за исключением строк с переменной длиной. |
\x0041 = "A" |
![]() |
---|
|
Строки форматов
class FormatString { static void Main() { // Get user input. System.Console.WriteLine("Enter a number"); string input = System.Console.ReadLine(); // Convert the input string to an int. int j; System.Int32.TryParse(input, out j); // Write a different string each iteration. string s; for (int i = 0; i < 10; i++) { // A simple format string with no alignment formatting. s = System.String.Format("{0} times {1} = {2}", i, j, (i * j)); System.Console.WriteLine(s); } //Keep the console window open in debug mode. System.Console.ReadKey(); } }