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