如何在C#源代码中的字符串中添加新行?

时间:2009-01-21 12:13:32

标签: c# syntax

C#sytax中是否有定义新行的方法? (比如VB _)

示例:

而不是:

string myStr = "very long string" +
"another long string";

此:

string myStr = "very long string \something
another long string"

或者;编译器处理这个并执行类似的操作; “string”+“string” - >在这个例子中是“stringstring”吗?

欢迎不同的情况,比如这些字符串是常量等等。

4 个答案:

答案 0 :(得分:22)

编译器将“ABC”+“DEF”变成“ABCDEF”,因此使用+

是免费的

答案 1 :(得分:19)

您可以使用

string myStr = @"very long string
another long string";

@“是字符串文字的开头,这种字符串在找到下一个”字符“之前不会结束。

c#没有确切的语法与vb中的_字符完全相同。因此,如果您想避免包含新行,则必须手动将字符串连接到不同的行。

答案 2 :(得分:3)

我相信你要找的是C#行延续字符。

停止寻找。空无一人。在C#中,当分号“;”时,行结束到了。

因此,正如其他人所提到的,如果你想要分解字符串赋值,只需使用'+'字符。


namespace Jaberwocky
{
    class Program
    {
        public static void Main(string[] args)
        {
            string s = "Hello World! " +
                "This is a long string " +
                "That continues on and " +
                "on and on and on.";
            Console.WriteLine(s);
            Console.ReadKey(true);
        }
    }
}

答案 3 :(得分:-3)

应尽可能使用StringBuilder来连接字符串,因为它运行得比仅使用“this”+“that”更快。