2012-01-19 73 views
9

我使用Environment.NewLine,我的同事使用vbCrLf。vbCrLF or Environment.NewLine

當我在做代碼審查他們我想要的東西,我可以指出說「使用Environment.NewLine代替vbCrLf」

或者,我只是在風中撒尿,並沒有關係真的很重要嗎?

回答

5

Environment.NewLine更具可移植性,使代碼更易於被C#編碼的人閱讀。技術上vbCrLf是一個常數,NewLine不是。這是因爲在不同的操作系統上,NewLine可能不會返回CR/LF。在Unix上它只是LF。

2

Environment.NewLine在.NET中是可移植的,對於不熟悉VB的人來說它比vbCrLf更具可讀性。

3

在大多數情況下,任何一個都可以正常工作。然而,如果你在Mono上開發並在Unix操作系統上使用Environment.NewLine,那麼你會得到不同的結果(\ n(LF)而不是\ r \ n(CRLF))。另外,如果您想要/需要將您的代碼移植到C#,則Environment.NewLine不必更新,而vbCrLf將會更新。

2

另一點是Environment.NewLine更清楚地表達了意圖的含義。在大多數情況下,目標是在此字符串中放置換行符,而不是在此字符串中放置回車符和換行字符Environment.NewLine狀態什麼要做,vbCrlf狀態如何做到這一點。

+0

我明白你的觀點。 – cometbill