我有一个字符串如下:
string example = @"string str = ""forty-two"";
char pad = '*';
输出在一行中,如下所示:
string str = "forty-two"; char pad = '*';
我需要如下输出:
string str = "forty-two";
char pad = '*';
如何在此逐字字符串文字中的 'char pad' 之前插入换行符
我有一个字符串如下:
string example = @"string str = ""forty-two"";
char pad = '*';
输出在一行中,如下所示:
string str = "forty-two"; char pad = '*';
我需要如下输出:
string str = "forty-two";
char pad = '*';
如何在此逐字字符串文字中的 'char pad' 之前插入换行符
在逐字字符串文字中,除了两个双引号外,所有转义字符都被逐字解释,所以如果你想要一个两行字符串,你必须手动将它写成两行:
string example = @"string str = ""forty-two"";
char pad = '*';";
Console.WriteLine(example); // string str = "forty-two";
// char pad = '*';
来自msdn:
诸如@"c:\Foo" 之类的字符串文字称为逐字字符串文字。它基本上意味着,“在到达下一个引号字符之前,不要对字符应用任何解释”。因此,逐字字符串文字可以包含反斜杠(它们不会被加倍)甚至是行分隔符。要在逐字文字中获得双引号 ("),您只需将其加倍,例如 @"My name is ""Jon""" 表示字符串 My name is "Jon"。包含行分隔符的逐字字符串文字还将在行首包含空格,因此我倾向于在空格很重要的情况下不使用它们。不过,它们非常适合在源代码中包含 XML 或 SQL,以及另一个典型用途(这不
值得注意的是,它不会以任何方式影响字符串本身:指定为逐字字符串文字的字符串与指定为具有适当转义的普通字符串文字的字符串完全相同。调试器有时会选择将字符串显示为逐字字符串文字 - 这只是为了便于查看字符串的内容而不必担心转义。
[作者:乔恩斯基特]