C#中的字符串,如正则表达式中,有可能出现一些与C#语言相同的字符,比如"\",会让编译器作为C#语言来识别,截断该字符串,并可能产生编译器错误.
为了防止这种情况的发生,在该字符串前加一个"@"就是告诉编译器,这些特殊字符是作为字符串中的一部分存在的,编译器就不会去编译它了.
比如路径"c:\abc\d.txt"将产生编译器错误,之前可以写为"@c:\abc\d.txt"便得到其真实路径了.
C 类语言中是有很多转义字符的,比如 '\n' 表示回车,'\"' 表示双引号,'\\' 表示“\”符号,也就是说,如果我们要表示
c:\abc\d.txt
的话,就得写 "c:\\abc\\d.txt",如果我们不希望 C# 将其识别为转义字符,就可以加 @ 符号,写成 @"c:\abc\d.txt"