我有一个这样的字符串变量:

string title = string.empty;

我必须在双引号内的div中显示传递给它的任何内容。我写过这样的东西:

...
...
<div>"+ title +@"</div>
...
...

我怎么在这里加双引号?这样它就会像这样显示:

"How to add double quotes"

当前回答

现在是c# 11

var string1 = """before "inside" after""";

var string2 = """ "How to add double quotes" """;

其他回答

现在是c# 11

var string1 = """before "inside" after""";

var string2 = """ "How to add double quotes" """;

所以你本质上是问如何存储双引号在一个字符串变量?有两个解决方案:

var string1 = @"""inside quotes""";
var string2 = "\"inside quotes\"";

为了让大家更清楚发生了什么:

var string1 = @"before ""inside"" after";
var string2 = "before \"inside\" after";

<i class=\"fa fa-check-circle\"></i>"与Eval()数据绑定的三元运算符一起使用:

Text = '<%# Eval("bqtStatus").ToString()=="Verified" ? 
       Convert.ToString("<i class=\"fa fa-check-circle\"></i>") : 
       Convert.ToString("<i class=\"fa fa-info-circle\"></i>"

另注:

    string path = @"H:\\MOVIES\\Battel SHIP\\done-battleship-cd1.avi";
    string hh = string.Format("\"{0}\"", path);
    Process.Start(@"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe ", hh + " ,--play");

hh的实际值,正如传递的那样,将是"H:\MOVIES\ batttel SHIP\done-battleship-cd1.avi"。

当需要双双字面值时,使用:@"H:\MOVIES\ batttel SHIP\done-battleship-cd1.avi";

而不是:@"H:\ moviesbatttel SHIP\done-battleship-cd1.avi";

因为第一个字面值是路径名,第二个字面值是双引号。

你需要通过将它们加倍来转义(逐字串字面量):

string str = @"""How to add doublequotes""";

或者对于普通的字符串,你可以用\:

string str = "\"How to add doublequotes\"";