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)
。