什么是逐字字符串?

时间:2013-05-19 13:30:34

标签: c#

来自ReSharper,我知道

var v = @"something";

使v称为逐字字符串。这是什么以及使用它的常见方案是什么?

2 个答案:

答案 0 :(得分:14)

在逐字字符串中,将忽略转义序列(例如换行符的"\n")。这有助于您键入包含反斜杠的字符串。

该字符串也允许在多行上扩展,例如:

var s = @"
line1
line2";

该字符串的显示方式与您在源代码中输入的字符串相同,并带有换行符,因此您不必担心缩进,换行符等。

要在逐字文字中使用引号,只需将它们加倍:

@"This is a string with ""quotes""."

答案 1 :(得分:13)

这意味着不需要转义特殊字符,因为您通知编译器期望特殊字符,并忽略它们。常见的用例可能是指定连接字符串:

string sqlServer = @"SERVER01\SQL"; 

这是完全有效的,而不是在反斜杠被视为转义字符的正常使用中。