在编码时如何使用\r与\n,两者的区别_java

\r与\n到底有何区别,编码的时候又应该如何使用,我们下面来了解一下。

区别:

\r:
全称:carriage return (carriage是“字车”的意思,打印机上的一个部件)
简称:return
缩写:r
ASCII码:13
作用:把光标移动到当前行的最左边

\n:
全称:new line
别名:line feed
缩写:n
ASCII码:10
作用:把光标向下移动一行

不同操作系统怎样表示“回车+换行”(即一行的结束):
Unix、Linux:\n表示回车+换行,\r没什么意义
Windows、DOS:\r\n表示回车+换行,顺序不能变
Mac:\r表示回车+换行

历史:
机械的英文打字机:在打字机上,有一个部件叫“字车”(carriage),每输入一个单词,“字车”就前进一格。当输满一行后,使用者就要推动“字车”到起始位置,这时打字机会有两个动作:“字车”归位、滚筒(roller)上卷一行(相当于“字车”下移一行),以便开始输入下一行。这两个动作合起来叫做“回车”,相当于现在键盘中的“Enter”键。

电传打字机:(Teletype Model 33,Linux/Unix下的tty概念也来自于此)每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车(return)”,告诉打字机把打印头定位在左边界;另一个叫做“换行(newline)”,告诉打字机把纸向下移一行。后来这两个动作被缩写为“\r”和“\n”。

编程语言中如何使用:
因为Unix中是用“\n”表示一行的结束,所以在C语言(以及其他C语言的继承者,比如C++, Java)中可以直接使用“\n”,在不同的操作系统中会被自动转换成相应的字符(比如在Windows中会被转成“\r\n”)。

以上就是本文的全部内容,希望大家能够喜欢。

时间: 2024-07-29 23:24:06

在编码时如何使用\r与\n,两者的区别_java的相关文章

如何在前端编码时实现人肉双向编译

如何在前端编码时实现人肉双向编译 React+flux是目前最火的前端解决方案之一,但flux槽点颇多,例如store比较混乱,使用比较繁琐等,于是出现了很多第三方的基于flux优化的架构. 有人统计了目前主流的flux实现方案,感兴趣的可以看这里:Which Flux implementation should I use? 其中redux是目前github上star最多的一个方案,该方案完全独立于react,意味着这套理念可以作为架构层应用于其他的组件化方案.同时官方也提供了react-re

servlet-setContentType设置编码时设置为utf-8就出现乱码,其他编码则正常显示

问题描述 setContentType设置编码时设置为utf-8就出现乱码,其他编码则正常显示 设置编码的代码: response.setCharacterEncoding("utf-8"); response.setContentType("text/html,charset=utf-8"); 运行之后只有不是UTF-8编码就可以正常显示中文,比如gb2313和GBK

百度地图 地理编码时返回PERMISSION_UNFINISHED

问题描述 百度地图 地理编码时返回PERMISSION_UNFINISHED 百度地图 地理编码时返回PERMISSION_UNFINISHED 第一次运行的时候都会返回PERMISSION_UNFINISHED,后面再运行都都不会提示这个. 解决方案 百度地图地理编码

摄像头 添加文字-如何给摄像头采集的视频在编码时添加上文字?

问题描述 如何给摄像头采集的视频在编码时添加上文字? 请问,如何给摄像头采集的视频在编码时添加上文字?麻烦有知道的大侠能给解决一下.请问,如何给摄像头采集的视频在编码时添加上文字?麻烦有知道的大侠能给解决一下.请问,如何给摄像头采集的视频在编码时添加上文字?麻烦有知道的大侠能给解决一下.

HEVC算法和体系结构:编码结构之编码时的分层处理架构

编码结构之编码时的分层处理架构         本博文主要介绍HEVC编码结构中的"编码时的分层处理架构".HEVC编码结构的主要目的就是为了各种应用下操作的灵活性以及数据损失的鲁棒性(所谓"鲁棒性",是指控制系统在一定的参数摄动下,维持其它某些性能的特性).从GOP(Group of Pictures)至Slice,从Slice至SS(Slice Segment),从SS至CTU(Coding Tree Unit),从CTU至CU(Coding Unit)的过程就

android开发-Android开发中,反向地理编码时,报连接被拒绝的错误

问题描述 Android开发中,反向地理编码时,报连接被拒绝的错误 如题,在将经纬度转成地理位置时,在使用Google API时,连接总是错误,但是在电脑浏览器上却可以. 1. StringBuilder url = new StringBuilder(); url.append("http://maps.google.com/maps/api/geocode/json?latlng="); url.append(latitude).append(","); url

android-Android:getRsources()和R类获取资源的区别

问题描述 Android:getRsources()和R类获取资源的区别 我是一个安卓初学者,今天遇到一段代码 float width = this.getResources().getDimension(R.dimen.text_width); float height = this.getResources().getDimension(R.dimen.text_height); //int width = R.dimen.text_width; //int height = R.dimen

javascript定义变量时带var与不带var的区别分析

 这篇文章主要介绍了javascript定义变量时带var与不带var的区别,以一个简单实例分析了变量定义时带var与不带var的执行原理及用法区别,需要的朋友可以参考下     本文实例分析了javascript定义变量时带var与不带var的区别.分享给大家供大家参考.具体分析如下: 直接看实例里说明: 代码如下: <script language="javascript" type="text/javascript"> var abc=89;//带

javascript定义变量时带var与不带var的区别分析_javascript技巧

本文实例分析了javascript定义变量时带var与不带var的区别.分享给大家供大家参考.具体分析如下: 直接看实例里说明: 复制代码 代码如下: <script language="javascript" type="text/javascript"> var abc=89;//带var,表示全局变量 function test(){  var abc=80;//在函数内部,如果不带var,表示使用函数外全局变量:带上var,表示新定义一个全局变量