vbLf,vbCrLf和amp;之间的差异vbCr常量

时间:2014-12-01 07:02:37

标签: vb.net printing constants msgbox

我使用了vbLfvbCrLf等常量。 MsgBox 中的vbCr;它在MsgBox中生成相同的输出(Text" Hai"出现在第一段和一个单词" Welcome"出现在下一段中)

MsgBox("Hai" & vbLf & "Welcome")
MsgBox ("Hai" & vbCrLf & "Welcome")
MsgBox("Hai" & vbCr & "Welcome")

我知道vbLfvbCrLf& vbCr用于打印和显示功能。

我想知道vbLfvbCrLf& vbCr常数。

2 个答案:

答案 0 :(得分:49)

 Constant   Value               Description
 ----------------------------------------------------------------
 vbCr       Chr(13)             Carriage return
 vbCrLf     Chr(13) & Chr(10)   Carriage return–linefeed combination
 vbLf       Chr(10)             Line feed
  • vbCr : - 返回行首
    表示打印和显示功能的回车符字符。

  • vbCrLf : - 类似于按Enter键
    表示回车符字符与换行符的组合,用于打印和显示 功能

  • vbLf : - 转到下一行
    表示用于打印和显示功能的换行符


Constants Class

了解详情

答案 1 :(得分:29)

这三个常数现在具有相似的功能,但历史起源不同,偶尔也可能需要使用其中一个。

你需要回想一下旧手动打字机的日子来获得它的起源。启动新的文本行需要两个不同的操作:

  1. 将打字头向左移动。在打字机的实践中,这是通过将带有纸张的卷筒("托架")一直向右移动来完成的 - 打字头是固定的。这是回车
  2. 将纸张向上移动一行的宽度。这是换行
  3. 在计算机中,这两个动作由两个不同的字符表示 - 回车符为CR,ASCII字符为13,vbCr;换行符为LF,ASCII字符为10,vbLf。在远程打印和行式打印机的过去,打印机需要发送这两个字符 - 传统上按照CRLF的顺序 - 开始一个新行,所以CRLF组合 - { {1}} - 在某些计算环境中成为传统的行结束序列。

    当然,问题在于,只使用一个字符来标记行结尾,并让终端或打印机自动执行回车和换行操作。所以在你知道它之前,我们有3个不同的有效行结尾:vbCrLf单独(在Unix和Macintoshes中使用),LF单独(显然在较旧的Mac OS中使用)和CR组合(在DOS中使用,因此在Windows中使用)。这反过来导致了DOS / Windows程序的复杂性,可以选择在CRLF中打开文件,其中从文件中读取的任何text mode对转换为单CRLF(和副)写作时也是如此。

    所以 - 缩短(太长篇)长篇故事 - 有三个独立行分隔符存在的历史原因,现在这些分隔符通常无关紧要:也许.NET中最好的行动方式是使用{ {1}}这意味着其他人已经决定使用哪个,并且应该减少未来的可移植性问题。