【问题标题】:trying to produce a string in C# containing "@" character试图在 C# 中生成一个包含“@”字符的字符串
【发布时间】:2020-05-19 23:56:16
【问题描述】:

我花了很多时间试图弄清楚如何在 C# 中指定一个文字字符串,该字符串在符号处包含一个“@”,后跟一个空格(实际上是 asp.net mvc 5)。事实证明,在这种努力中搜索互联网是徒劳的。似乎搜索引擎比我更聪明,并且已经知道我不可能搜索我要求的内容。任何帮助如何构造这样一个邪恶的字符串?谢谢。

【问题讨论】:

  • string x = "@ "; 但老实说,我不太清楚您所说的 “C# 中的文字字符串,其中包含符号处的“@”,后跟一个空格“,因为肯定没有这么明显。您的意思是 verbatim 字符串文字吗?但如果是这样,那么它只是string x = @"@ ";
  • 我怀疑如果你的 @ 消失了,那么其他东西正在吞噬它。它与 C# 语言没有任何关系。您需要一步一步仔细跟踪,看看您的字符串发生了什么。如果您使用 Console.WriteLine 编写一个简单的 C# 控制台应用程序,您将很快发现字符串中的 @ 没有问题。您可能希望提供更多详细信息并显示更多代码。 @ 不是 C# 字符串中的特殊字符
  • 是的,“@”。你会认为这很容易。甚至 ”\@ ”。这两者(以及@“@”)都会引发编译器错误: Quote: 在“@”字符之后遇到空格或换行符。只有有效的标识符、关键字、cmets、“(”和“{”在代码块的开头是有效的,它们必须紧跟在“@”之后,中间没有空格。EndQuote。
  • ...在别人建议我使用“@@”之前,我也试过了。

标签: c# string escaping


【解决方案1】:

回答: 字符串 atSymbol = "\u0040";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-26
    • 1970-01-01
    • 1970-01-01
    • 2020-10-28
    相关资源
    最近更新 更多