在C#中,字符串字面量可以使用不同的引号来定义,每种方式都有其特定的用途和特性。
@"" (Verbatim String Literals)
使用@符号开始一个字符串字面量时,实际上创建了一个所谓的“原样”或“逐字”字符串。这意味着字符串中的所有字符都将被按照它们出现的方式处理,包括转义序列。例如,\n在普通字符串中表示换行符,但在逐字字符串中,它将被视为两个字符:反斜杠(\)和字母n。
string path = @"C:\folder\file.txt";
在这个例子中,字符串包含了实际的字符C:\folder\file.txt,而不是尝试去解释其中的转义序列。
""" (Triple-quoted String Literals)
从C# 11开始,可以使用三个双引号(""")来创建多行字符串字面量。这种类型的字符串允许你在不使用转义序列的情况下包含换行符和引号。这在编写长文本或HTML代码块时非常有用,不必担心转义引号或换行符。
string multiLineString = """
This is a multi-line string.
It can span multiple lines
without the need for escape characters.
""";