Reputation: 31586
What end-of-line identifier should I use (for example, for output to text files)?
There are many choices:
Global.Microsoft.VisualBasic.ChrW(13) & Global.Microsoft.VisualBasic.ChrW(10)
(generated by the Visual Studio designer, at least Visual Basic 2005 Express Edition, for a TextBox with property Multiline set to True when Shift + Return is used while editing property Text.)What is best practice?
Upvotes: 25
Views: 19378
Reputation: 147340
I believe it generally makes most sense to use Environment.NewLine
as the new-line identifier, for a number of reasons:
\n
.vbCrLf
is a legacy constant from the VB6 and earlier languages. Also, it's not environment-independent.\r\n
has the same issue of not being environment-dependent, and also can't be done nicely in VB.NET (you'd have to assign a variable to Chr(13) & Chr(10)
).Microsoft.VisualBasic
namespace, effectively making it a legacy/backwards-compatibility option, like vbCrLf
. Always stay clear of legacy code if possible.Upvotes: 28
Reputation: 12490
Depending on you programming style, you may choose:
I think the worst would be the use of retrocompatibility functions, like vbCrLf (or CInt() and so on)
Upvotes: 2
Reputation: 15566
Environment.NewLine
simply because it is environment dependent and behaves differently on different platforms.
Upvotes: 6