3 回答
TA贡献1772条经验 获得超5个赞
取决于平台。在Windows上,它实际上是“ \ r \ n”。
从MSDN:
对于非Unix平台,包含“ \ r \ n”的字符串,对于Unix平台,包含“ \ n”的字符串。
TA贡献1818条经验 获得超3个赞
Environment.NewLine从源代码的确切实现:
.NET 4.6.1中的实现:
/*===================================NewLine====================================
**Action: A property which returns the appropriate newline string for the given
** platform.
**Returns: \r\n on Win32.
**Arguments: None.
**Exceptions: None.
==============================================================================*/
public static String NewLine {
get {
Contract.Ensures(Contract.Result<String>() != null);
return "\r\n";
}
}
资源
.NET Core中的实现:
/*===================================NewLine====================================
**Action: A property which returns the appropriate newline string for the
** given platform.
**Returns: \r\n on Win32.
**Arguments: None.
**Exceptions: None.
==============================================================================*/
public static String NewLine {
get {
Contract.Ensures(Contract.Result() != null);
#if !PLATFORM_UNIX
return "\r\n";
#else
return "\n";
#endif // !PLATFORM_UNIX
}
}
来源(在中System.Private.CoreLib)
public static string NewLine => "\r\n";
来源(在中System.Runtime.Extensions)
TA贡献1784条经验 获得超8个赞
如其他人所述,Environment.NewLine返回平台特定的字符串以开始新行,该字符串应为:
"\r\n" (\ u000D \ u000A)对于Windows
"\n" (\ u000A)对于Unix
"\r" (\ u000D)对于Mac(如果存在这种实现)
请注意,在写入控制台时,并非严格要求Environment.NewLine。"\n"如果需要,控制台流将转换为适当的换行序列。
- 3 回答
- 0 关注
- 1904 浏览
添加回答
举报