C++ VB换行符转义字符?
在C语言中,我使用“第1行1\n第2行”作为换行符,但是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
“第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”(这是原始问题)。