Java里\r和\n的区别

一直困惑\n \r 的区别。百度都说:\r 是回车符,\n 是换行符。\n是换到下一行, 而\r还是在当前行,并且光标移到当前行的的第一格!

一、所对应的ASCII码不同

符号        ASCII码          意义

\n              10              换行NL

\r               13              回车CR

回车 \r  本义是光标重新回到本行开头。r 的英文return,控制字符可以写成CR,即Carriage Return

换行 \n  本义是光标往下一行(不一定到下一行行首)。n 的英文newline,控制字符可以写成LF,即Line Feed

二、针对不同的系统的换行符

苹果系统Mac       \r 

Unix、Linux系统 \n 

Windows系统      \r\n

三、代码测试

Java里\r和\n的区别

Eclipse里运行结果如下:

Java里\r和\n的区别

\n\r, eclipse输出结果为换行之后再换行,新的输入光标在新的第二行的开头

\r   \n  \r\n  效果一样  都是换行输出,在Eclipse看不出来\r的作用。

DOS窗口可以看出来

Java里\r和\n的区别

上述结果表示:\r单独使用,回到本行行首,替换掉对应的字符。

到底。。。。。。。。是依照哪个为标准呢?Java里\r和\n的区别有大神知道的话 求指教