\r \n \r\n

\r  \n   \r\n

\r是回车,英文是Carriage return,作用:使光标到行首

\n是换行,英文是New line/line feed,作用:使光标下移一行

我们平时所说的键盘Enter键换行实则应该叫做叫做回车换行(\r\n)

看到一种说法: 
windows下enter是 \r\n; 
linux/unix下是\n; 
mac下是\r

Windows 采用 \r\n 是有原因的,Windows 采用了传统的英文打字机的模式。想想看英文打字机是如何换行的呢?

英文打字机是选择将小车退回至起点,这个过程称为回车(carriage return, CR),

随后把小车调至下一行的位置,这个过程称为换行(line feed, LF),

这样就完成了英文打字机中换行过程。

形象讲解:

\r:回车

\r \n \r\n

\n:换行

\r \n \r\n

\r\n:回车换行

\r \n \r\n