如何定义一个字符串,如:sss" + str1 + "ddd

How to define a string like: sss" + str1 + "ddd

string str1="xxx";
string str2=@"sss" + str1 + "ddd";
Console.WriteLine(str2);

以上代码给出:

sssxxxddd

但我想要的是:

sss" + str1 + "ddd

怎么做?

您可以通过在引号前添加反斜杠 (\) 来转义引号。

string str1 = "xxx";
string str2 = "sss\" + str1 + \"ddd";
Console.WriteLine(str2);

对于以 @ 字符为前缀的字符串,引号通过将两个字符放在一起进行转义(即 string str2 = "sss"" + str1 + ""ddd")。

给你:

 Console.WriteLine("sss\" + str1 + \"ddd");
        string str1 = "xxx";
        string str2 = @"sss"" + str1 + ""ddd";
        Console.WriteLine(str2);

        string str3 = "xxx";
        string str4 = "sss\" + str1 + \"ddd";
        Console.WriteLine(str4);
        Console.ReadKey();
string str1="xxx";
string str2=@"sss""" + str1 + @"""ddd";
Console.WriteLine(str2);

string str1="xxx";
string str2="sss\"" + str1 + "\"ddd";
Console.WriteLine(str2);

这会给你这样的答案:sss"xxx"ddd。如果你想要像 sss" + str1 + "ddd 这样的答案,那么你可以将第二行替换为:string str2=@"sss"" + str1 + ""ddd";

你可以试试这个

string str1="xxx";
string str2=@"sss\"" + str1 + "\"ddd";
Console.WriteLine(str2);

已编辑

string str1 = "\"xxx\""; string str2 = "sss" + str1 + "ddd"; Console.WriteLine(str2); Console.ReadLine();