字符串太长而无法放在一行 - VB.NET

时间:2014-05-21 05:36:49

标签: vb.net string visual-studio

我有一个长度为109000个字符的字符串,它不适合一行,我得到一个“行太长了”。错误。
我知道使用普通代码可以在代码末尾执行“_”,如

    this code is too long so I will use the _
    this code acts like it is on the same line

但是在一个字符串中,它将“_”作为字符串的一部分(应该如此)。我没有找到关于此的信息,所以这里是给你们的,stackoverflow。

2 个答案:

答案 0 :(得分:3)

documentation on the "Line is too long" error表示最大行长度为 65535,所以这就是你收到错误的原因。

有一些解决方案:

您可以使用&

连接字符串
Dim s As String = "this code is too long so I will use the" &
                  "this code acts like it is on the same line"

请注意,您也可以使用+来连接字符串但请确保您具有Option Strict On(&更安全,因为结果始终是String)。请在此处查看两者之间的比较:Ampersand vs plus for concatenating strings in VB.NET

您可以使用字符串构建器。如果您不断向原始字符串添加字符串(特别是如果您在循环中执行此操作),这可能会更有效:

Dim sb As new StringBuilder
sb.Append("this code is too long so I will use the")
sb.Append("this code acts like it is on the same line")

Debug.Writeline(sb.ToString)

请参阅MSDN了解More information about Concatenation here

答案 1 :(得分:-1)

Dim longString As String = "loooooooooooooooooooooooooo" + _
"ooooooooooooooggggggg"