8

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

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

“不,”他说。

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

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

4

2 回答 2

12

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

那么听起来你可能不应该在源代码中包含这些字符串。

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

C# 中没有任何形式的字符串文字可以让您将双引号表示为源代码中单个双引号字符。

于 2013-01-15T13:43:20.233 回答
4

你可以试试这个,但你仍然有效地逃避:

string s = @"""No,"" he said.";
于 2013-01-15T13:42:57.297 回答