当声明一个字符串变量时有一些字符是不能以平常的方式包含在变量中的。为了解决这个问题,C#提供了两种不同的方法。
第一种方法是使用’转义序列’。例如,我们想得到如下的字符串
“Hello World
How are you”
我们可以使用下面的语句声明字符串:string a = "\"Hello World\nHow are you\""。这条语句中使用了”和换行符的转义序列。更多字符的转义序列可以参见下表:
Character |
Escape Sequence |
' |
\' |
" |
\" |
\ |
\\ |
警报 |
\a |
退格符 |
\b |
换页符 |
\f |
换行符 |
\n |
回车符 |
\r |
Tab 符 |
\t |
垂直 Tab 符 |
\v |
使用数字指定的Unicode 字符,如\u2000 |
\u |
使用十六进制数指定的Unicode 字符,如\xc8 |
\x |
空值 |
\0 (zero |
第 二种方法是使用’逐字字符串’文本。这种方法将想要得到的字符串放在@”和”之间。假如我们需要将C:\My Documents\赋值给’path’,我们可以使用转义序列方法:string path = "C:\\My Documents\\";也可以使用如下的语句:string path = @"C:\MyDocuments\"。
通 过使用后一种方法得到的字符串还可以横跨多行而不需要使用’\n’。使用这种方法唯一需要使用到转义序列的字符串是”,其转义字符为””(两个连在一起的 双引号)。例如想将the word "big" contains three letters.赋值给’text’,我们就可以使用如下的语句:string text = @"the word ""big"" contains three letters."。