\r \n 回车换行符详解
\r \n 回车换行符详解
- 1. \r \n 回车换行的含义
- 1.1 \r 回车
- 1.2 \n 换行
- 2. \r \n 回车换行的历史
- 2.1 \r \n 回车换行的历史
- 2.2 发展:linux 和 windows的不同
- 2.2.1 去除windows的\r
- 参考:
1. \r \n 回车换行的含义
1.1 \r 回车
回车 CR (carriage return)
含义:return oldline begin
光标回到一旧行(当前行)的开头。(即光标目前所在的行为旧行)回车符 ‘\r’ ASCII值为13 (’\x0a’),()
1.2 \n 换行
- 换行 LF (line feed)
- 含义: newline begin
另起一新行,光标在新行的开头; - 换行符’\n’ASCII值为10( ‘\x0d’ )
2. \r \n 回车换行的历史
2.1 \r \n 回车换行的历史
电传打字机
在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。
一个叫做"回车",告诉打字机把打印头定位在左边界;另一个叫做"换行",告诉打字机把纸向下移一行。CR和LF
在那个时代,CR和LF很多时候都会单独使用。
比如说制作表格的时候,要求列对其,就只用LF不用CR,
反之,如果打错了,就要把打错的地方拿涂改液涂掉,按CR重打。
如果要重启一行新行,就要按一下CR再按一下LF(反过来当然也行),根据计算机系统的不同,
回车键实际的情况除了单CR,单LF,CRLF,LFCR,还有一些其他的格式。
这就是"换行"和"回车"的来历,从它们的英语名字上也可以看出一二。
2.2 发展:linux 和 windows的不同
发展到计算机上
后来,计算机发明了,这两个概念也就被般到了计算机上。
那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。
于是,就出现了分歧。linux windows的区别
Unix系统里,每行结尾只有"<换行>",即"\n";
Windows系统里面,每行结尾是"<回车><换行>",即"\r\n";
Mac系统里,每行结尾是"<回车>"。结果
一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;
而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
2.2.1 去除windows的\r
sed -i “s/\r//” 文件
参考:
https://www.zhihu.com/question/29326647
https://cloud.tencent.com/developer/article/1353286
http://www.ruanyifeng.com/blog/2006/04/post_213.html
\r \n 回车换行符详解相关推荐
- linux换行符 r,\r \n 回车换行符详解
\r \n 回车换行符详解 \r \n 回车换行符详解 \r \n 回车换行符详解1. \r \n 回车换行的含义1.1 \r 回车 1.2 \n 换行 2. \r \n 回车换行的历史2.1 \r ...
- Qt——“\r\n“回车换行符在Linguist里不奏效(无效果)?
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 提示: 文章目录 系列文章目录 前言 环境 问题 解决 1.简单粗暴--直接在Linguist的翻译里按下"E ...
- C语言中空格符,制表符,换行符详解
空白符的含义模糊,通常是指空格' ',其ASCII码为32. 制表符为'\t',相当于4个或8个空格符,其ASCII码为9. 换行符为'\n',作用是将光标移至下一行,其ASCII码为10. 此外,还 ...
- html+正则+换行+回车,正则与回车换行符使用详解
这次给大家带来正则与回车换行符使用详解,正则与回车换行符使用的注意事项有哪些,下面就是实战案例,一起来看一下. C#中,读取文本文件内容,里面往往有许多回车换行符("\r\n"), ...
- 回车符('\r')和换行符('\n')
换行符'\n'和回车符'\r' 顾名思义,换行符就是另起一行,回车符就是回到一行的开头,所以我们平时编写文件的回车符应该确切来说叫做回车换行符 '\n'换行(newline)(十进制表示为10) '\ ...
- php 替换回车tab,PHP替换回车换行符的三种方法
小小的回车换行,在不同的平台有着不同的实现. 为什么要这样,世界是多样的! 推荐学习:PHP视频教程 本来,在Unix / Linux世界换行用\n, Windows为了体现不同,就用\r\n, 更有 ...
- php 将换行符替换,PHP替换回车换行符的三种方法
小小的回车换行,在不同的平台有着不同的实现. 为什么要这样,世界是多样的! 推荐学习:PHP视频教程 本来,在Unix / Linux世界换行用\n, Windows为了体现不同,就用\r\n, 更有 ...
- JS替换空格回车换行符
JS替换空格回车换行符 str=str.replace(/\r/g," ") str=str.replace(/\n/g,"<br />") 或 ...
- C# 中的回车换行符 表示
在 C# 中,我们用字符串 "/r/n" 表示回车换行符. string str = "第一行/r/n第二行"; 但是我们更推荐 Environment.New ...
最新文章
- android 底部弹框 BottomSheetDialog 的使用
- java request get json数据_Java中,获取request中json数据
- Lyft开源L5自动驾驶数据集:55000个人工标注的3D注释框架,还有高清空间语义地图...
- NumPy学习笔记(一)
- 行为模型实例 php,JS中事件模型的实例详解
- elementui下拉框 清空_巧妙解决element-ui下拉框选项过多的问题
- 【转】C#运算符重载**
- pycharm无法导入本地模块问题
- 在线涂鸦画板小程序源码
- Java反射示例教程
- oracle operation_type,oracle静默安装
- android 混音 源码,FFmpegAndroid android 端基于 FFmpeg 实现音频剪切、拼接、转码、混音、编解码;视频剪切、水印、截图、转码、编 @codeKK c开源站...
- 【Flink】Flink 没有keyBy 某个 subTask 没有数据
- Luogu P4478 [BJWC2018]上学路线 卢卡斯+组合+CRT
- 2021显著目标检测(SOD)方向部分论文汇总
- python 字符串模板_Python字符串模板
- Win8.1开机速度慢解决办法
- 微信支付金额为0.01分报错,和少一分钱的解决办法
- linux 内核usb,Linux 内核示例程序 usb_skeleton.c 详解
- Hadoop3.0.3-SYNTH运行