1

正如标题所暗示的那样,我最好在 C# 应用程序中使用\n,\r\n还是System.Environment.NewLine换行?

我有一个控制台、WinForms 和 WPF 应用程序,目前都在使用\n(如果需要),但在我的控制台应用程序中,我发现当从 CLi 重定向输出并在记事本中打开输出时,无法正确识别换行符。我可以改变我对这个应用程序的行为,但我正在寻求那些一直使用特定方法的人的建议以及为什么。

干杯!

更新:

因此,普遍的共识是System.Environment.NewLine除非出现特定要求\n(Unix / OS X),\r(OS 9)或\r\n(Windows) ,否则使用

谢谢大家,对重复感到抱歉!

4

2 回答 2

8

更好地使用Environment.NewLine因为\r并且\n依赖于平台。

\n 是 Unix,\r 是 Mac,\r\n 是 Windows

Environment.NewLine将根据操作系统返回上述任何内容。

于 2013-12-15T08:54:32.533 回答
1

除非您有意编写“外部”文件,否则最好使用 Environment.NewLine - 这就是它的用途。正如您所发现的,有时您可以摆脱其他事情,有时却不能。

编写读取文本文件的代码非常容易,因此它并不真正关心 \n 和 \r 用于结束行的组合,但正如您所发现的,记事本对此很严格。

于 2013-12-15T08:54:31.063 回答