@(at) sign in file path/string
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
What's the @ in front of a string for .NET?
我有以下代码:
1 |
它与filepath无关。它改变了字符串的转义行为。
在前缀为
在正常的字符串中,您必须将
此功能对于包含
举个简单的例子来说,增益并不大,但是图像中你有一个完整的路径,
对于正则表达式,这几乎是必须的。一个regex通常包含几个已经转义其他字符的
它是一个逐字字符串。
这允许字符串包含反斜杠,甚至换行符,而不需要对它们进行不同的处理:
1 2 3 | string multiLineString = @"First line second line third line"; |
由于反斜杠不用于转义,因此在字符串中插入双引号需要将其加倍:
1 | string withQuote = @"before""after"; |
逐字字符串通常用于文件路径(如您所示)和正则表达式,这两个表达式都经常使用反斜杠。
有关更多信息,请参阅我关于字符串的文章。
它允许您输入反斜杠()而不转义它:
1 2 | var s1 ="C:\\Temp\\MyFileName"; var s2 = @"C:\Temp\MyFileName"; |
这两种方法都会产生具有相同内容的字符串(而且由于字符串在编译时被内部保存,所以可能甚至是相同的字符串引用)。