VB换行逃脱char?

在CI中使用"1st line 1\n2nd line"作为换行符,但是VB怎么样? 我知道"1st line" & VbCrLf & "2nd line"但它太冗长,VB中换行符的转义字符是什么?

我想要打印

 1st line 2nd line 

我尝试使用\n但无论运行编译器多少次,它总是会输出

 1st line\n2nd line 

有任何想法吗?

您应该使用Environment.NewLine 。 在Windows上评估为CR + LF,在Unix系统上评估为LF。

VB中没有CR或LF字符的转义序列。 这就是"\n"被字面处理的原因。 所以, Environment.NewLine是你的家伙。

正如其他人所说,您应该使用环境敏感的Environment.NewLine属性。 vbCrLf是一个旧的VB6常量,它在VB.NET中提供,以实现向后兼容性。 例如,你应该使用:

 "1st line" & Environment.NewLine & "2nd line" 

如果你有很多行,那就太罗嗦了,你可以使用StringBuilder类,而不是:

 Dim builder As New StringBuilder() builder.AppendLine("line 1") builder.AppendLine("line 2") builder.AppendLine("line 3") builder.AppendLine("line 4") 

如果您特别需要CR和LF字符,则应使用ControlChars类中的常量而不是旧的vbCrLf常量。

你说VB,但用VB.NET标记。 你的问题也有些奇怪。 不同的操作系统实际上需要不同的换行符。 你想要的是Environment.NewLine 。 无论.NET框架运行什么操作系统,这都将为您提供正确的换行符。

我仍然使用老式的chr(13)例如:

 "Hello" & chr(13) & "World" 

它导致:

 Hello World 

编辑:像Dave Doknjas所说的那样,在你的情况下,它将是chr(10)