如何表达包含双引号而没有转义字符的字符串文字?

时间:2013-01-15 13:39:43

标签: c#

是否有一个C#语法,我可以用它来表达包含双引号的字符串而不必转义它们?我经常将C#源代码之间的字符串复制并粘贴到其他应用程序,并且继续添加和删除反斜杠是令人沮丧的。

EG。目前用于以下字符串(简单示例)

  “不,”他说。

我用C#"\"No,\" he said."

但我宁愿写一些像Python '"No," he said.'或Ruby %q{"No," he said.}这样的东西,所以我可以将内容逐字复制并粘贴到其他应用程序中。

2 个答案:

答案 0 :(得分:9)

  

我经常将C#源代码之间的字符串复制并粘贴到其他应用程序,并且继续添加和删除反斜杠是令人沮丧的。

然后听起来你可能不应该在源代码中包含字符串。

相反,创建嵌入在程序集中的文本文件,然后动态加载它们......或创建资源文件,以便按键查找字符串。

在C#中没有任何形式的字符串文字可以让你在源代码中用单个双引号来表达双引号。

答案 1 :(得分:3)

你可以尝试这个,但你仍然有效逃脱:

string s = @"""No,"" he said.";