DOS/Windows换行符是两(2(个字节,0x0D0A。UNIX/Linux换行符是一(1(个字节,0x0A。Mac换行符是一(1(个字节,0x0D。
如何编写代码来查找每个平台上换行符的长度?Windows上的输出将产生两(2(个字节,但Linux上的输出会产生一(1(个字节。我在about_Special_Characters
中没有发现任何与此相关的内容。
在Windows:上
PS C:srct> type .nl.ps1
'`n'
'`n'.Length
"`n"
"`n".Length
Windows和Linux都返回相同的结果。
PS C:srct> .nl.ps1
`n
2
1
.NET Standard为此提供了API,并且始终可以从Powershell获得:
[system.environment]::newline.length
在Windows 上
PS> [system.environment]::newline.length
2
在Ubuntu 上
PS> [system.environment]::newline.length
1