按照主题......
qazxsw poi是Unix,qazxsw poi是Mac,qazxsw poi是Windows。
有时它会给运行代码跨平台带来麻烦。你可以使用\n
绕过这个。
有关更多信息,请参阅\r
。快乐阅读
区别
有几个字符可以表示新行。通常的是这两个:
\r\n
不同的操作系统以不同的方式处理换行。以下是最常见的简短列表:
Environment.NewLine
他们希望换行符是两个字符的组合,即'\ r \ n'(或13后跟10)。
What is the difference between \r, \n and \r\n ?!
Unix使用单个'\ n'来表示新行。
* '\n' or '0x0A' (10 in decimal) -> This character is called "Line Feed" (LF).
* '\r' or '0x0D' (13 in decimal) -> This one is called "Carriage return" (CR).
Mac使用单个* DOS and Windows
。
取自* Unix (and hence Linux as well)
“\ n”只是一个换行符(Unicode U + 000A)。这通常是Unix行分隔符。
“\ r \ n”是回车符(Unicode U + 000D),后跟换行符(Unicode U + 000A)。这通常是Windows行分隔符。
基本上归结为Windows标准:\ r \ n和基于Unix的系统使用:\ n
* Mac
\ n是Unix(类似)系统使用的换行符,\ r \ n由windows使用。这与C#无关。
它是关于操作系统如何识别线路末端。
士气:如果您正在为Windows开发,请坚持使用\ r \ n。或者甚至更好,使用C#字符串函数来处理已经考虑行结尾的字符串(WriteLine等)。
\ n = LF(换行)//在Unix上用作换行符
\ r = CR(回车)//用作Mac上的换行符
\ r \ n = CR + LF //在Windows上用作换行符
(char)13 = \ r = CR
Environment.NewLine =基于操作系统的上述任何代码
// .NET提供了基于操作系统提供许多数据的Environment类,因此如果应用程序是在Windows上构建的,并且使用CR + LF(“\ n \ r”而不是Environment.NewLine)作为新行字符在你的字符串中,然后Microsoft创建了一个用于在Unix中运行.NET应用程序的VM,那么就会出现问题。因此,当您需要新的行字符时,应始终使用Environment.NewLine。现在您无需关心操作系统。