C++ VB换行符转义字符?

C++ VB换行符转义字符?,c++,c,vb.net,newline,output,C++,C,Vb.net,Newline,Output,在C语言中,我使用“第1行1\n第2行”作为换行符,但是VB呢?我知道“第1行”&VbCrLf和“第2行”,但它太冗长了,在VB中换行符的转义字符是什么 我想打印 1st line 2nd line 我尝试使用\n,但无论我运行编译器多少次,它都会输出这个值 1st line\n2nd line 有什么想法吗?你说的是VB,但是已经用VB.NET标记了。你的问题也有点奇怪。不同的操作系统实际上需要不同的换行符。您需要的是Environment.NewLine。无论.NET framework

在C语言中,我使用“第1行1\n第2行”作为换行符,但是VB呢?我知道
“第1行”&VbCrLf和“第2行”
,但它太冗长了,在VB中换行符的转义字符是什么

我想打印

1st line
2nd line
我尝试使用
\n
,但无论我运行编译器多少次,它都会输出这个值

1st line\n2nd line

有什么想法吗?

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

您应该使用
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
常量。

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

"Hello" & chr(13) & "World"
其结果是:

Hello
World

编辑:如Dave Doknjas所说,在您的情况下,将是
chr(10)
来填充行。

如果您正在寻找一个内联转义,以完成诸如在字符串中包含换行符之类的任务。格式化您可以包含一个管道或类似的内容,然后在字符串末尾替换它

String.Format(“批处理:{0}|产品编号:{1}|公式:{2}”、dr.Item(“批处理编号”)、dr.Item(“PartNum”)、dr.Item(“公式”).Replace({1})、Environment.NewLine)


您也可以在myStr已经包含您的内容的地方使用
myStr=myStr.Replace(“\n”,Environment.NewLine)
。\n。也可以作为自定义扩展。如果要使用Chr,请使用Chr(10)-这相当于“\n”(这是原始问题)。