- 浏览: 92055 次
- 性别:
- 来自: 北京
文章分类
回车符号和换行符号产生背景:
在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。
后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。
Unix 系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“ <回车><换行>”,即“\r\n”;Mac系统里,每行结尾是“<回车>”。一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
值得注意的是:
1,Windows下,换行符号占用两个字节,C语言代码如下:
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *file=fopen("./aa.txt","w+");
fputc('\n',file);
printf("%ld",ftell(file));
fclose(file);
return EXIT_SUCCESS;
}
在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。
后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。
Unix 系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“ <回车><换行>”,即“\r\n”;Mac系统里,每行结尾是“<回车>”。一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
值得注意的是:
1,Windows下,换行符号占用两个字节,C语言代码如下:
#include <stdio.h>
#include <stdlib.h>
int main(){
FILE *file=fopen("./aa.txt","w+");
fputc('\n',file);
printf("%ld",ftell(file));
fclose(file);
return EXIT_SUCCESS;
}
发表评论
-
Java对象引用类型
2013-05-09 09:55 958Java对象的引用类型分为强引用、软引用、弱引用和虚应用 强引 ... -
JVM调优大纲
2013-05-07 19:07 1771我觉得处理JVM调优问题需要以下五个步骤: ... -
diango创建数据异常no module named base
2013-05-05 22:02 1588本人使用django创建web项目使用的数据库是sqlite3 ... -
hibernate根据hbm自动生成数据库
2013-04-27 10:26 1058今天碰到一个很老的项目,只有hbm文件没有数据库,想根 ... -
svn分支合并到主线的十大注意事项
2013-04-07 10:39 0svn是java软件工程师常用的版本控制工具,但是对于分支到主 ... -
这几年收集的java相关资料
2013-04-06 14:46 614以下是我搜集的java相关资料,有需要的可以联系我,QQ470 ... -
很诡异的一个hibernate问题
2012-12-27 09:39 297在一个service里写了如下一段代码: List<Gr ... -
一种JavaWeb项目开发部署方式
2012-11-16 09:37 1189以前在myeclipse开发Java Web项目的时候 ... -
tomcat支持中文路径图片问题
2012-11-12 14:51 2691今天,上传图片,但是有文件夹是中文的或是图片文件名是中 ... -
已经安装jdk了,运行applet还是提示安装问题解决
2012-11-08 10:57 1286今天,同事的机子已经装了jdk,但是运行带有ap ... -
理解编译型编程语言心得
2012-11-01 14:11 7611,编译型语言,像c和c++都是,在源代码成为 ... -
集成到项目中web.xml报taglib标签错误
2012-10-31 15:45 846web.xml的报错位置: <taglib> ... -
使用润乾报表工具过程、心得和体会
2012-10-31 15:41 5636现在做的这个项目,需要导出相关报表,正好前几个 ... -
(转)Java开源软件六大帮派
2012-10-25 10:40 785原文链接:http://www.oschina.net/que ... -
Linux安装jdk详解
2012-10-22 16:34 7531,下载JDK,肯定官网下载,有多种类型,源码包、bin包、r ... -
(转)Linux设备命名规则
2012-10-19 15:21 1095在我们使用的计算机中 ... -
(转)Java几款性能分析工具的对比
2012-10-18 11:04 765在给客户进行应用程序维护的过程中,我注意到一些关于高负载条件下 ... -
Windows编程之钩子程序
2012-10-15 09:20 21081,钩子(Hook),是Windows消息处理机制的一个平台, ... -
(转)编程竞赛的几个在线提交系统
2012-10-12 14:28 1049下面是几个比较大的在线提交系统(Online Judge)里面 ... -
从编程的角度理解操作系统及其软件设计
2012-10-11 10:58 928我们都知道操作系统是装在计算机上的,所有的计算 ...
相关推荐
我到公司后先测试一下客户给我的错误示例(果然搜不到),然后排查一下昨天的数据是否有问题,发现昨天客户用excel导入的数据中,存在很多\r\n这种换行符和回车符。 如:库中数据为:“换行符\n换行符\n换行符”,...
最后,关于文档`javascript执行eval函数时利用正则表达式去掉回车符换行符和注释.doc`,这可能是详细阐述这一过程的文档,包含了具体实现和可能遇到的问题的解决方案。阅读此文档将有助于深入理解如何实际应用这些...
今天在编写99乘法在线小游戏(看过我的 linux下c实现的数据库备份(第四版)应该知道我在那里提过^.^)的时候遇到读取文件的信息遇到回车换行符的烦恼。 比如我文件里面有如下信息: name=qizexi sex=man 我希望读取...
在计算机世界中,回车符(0x0d)和换行符(0x0a)是两个非常重要的概念,但是很多人对它们的理解却存在一定的混淆。今天,我们就来彻底搞清这两个概念的区别和作用。 首先,我们来看看在不同的环境下,回车符和换行...
除了空格、换行符和回车符之外,有时还需要处理其他类型的空白字符,例如制表符(`\t`)或垂直制表符(`\v`)。这时可以通过扩展正则表达式来包含这些字符,如 `/[\s\n\r\t\v]+/g`。 #### 2.3 实战案例分析 假设有...
- - 去除数据文件中字符串的换行符; - - 使用此工具,必须有明确的行分隔符标记,且换行符标记不可在字符串中出现。否则无法使用,需要修改匹配搜索方式 ### 工具效率: 亲测200M文件5s中完成转换。 ### 使用...
SQL 清除文本中的换行符、回车符、制表符
总之,"文本回车换行符批量替换工具"是一个强大的文本处理助手,它集成了多种实用功能,包括回车换行符替换、文本排序、繁简体转换和间隔替换等。无论是在日常办公还是专业开发中,都能显著提高文本处理的效率,减少...
当用户在`textarea`中按下回车键时,浏览器会将其识别为换行符(`\r\n`),这在JavaScript读取`textarea`的值时也会体现出来。然而,在后续的数据处理过程中,例如在业务逻辑层将这些值转换成字符串形式并存储到...
这些回车符和换行符可能会对我们的文档编辑和阅读造成不便。如何批量清除这些回车符和换行符呢?下面我们将详细介绍两种清除方法。 回车符的清除方法 在 WPS 或 Word 中,回车符可以分为两种:一种为自带的回车符...
### Java去除字符串中的空格、回车、换行符、制表符的知识点详解 #### 一、背景介绍 在日常的软件开发过程中,我们经常需要处理来自各种来源的文本数据,例如用户输入、文件读取等。这些数据中常常会包含空格、...
“Excel回车换行符”通常表示的是ASCII码10(LF,Line Feed)和13(CR,Carriage Return)的组合,这在Excel中表现为新的一行。在某些情况下,例如将Excel数据导入到数据库、文本文件或其他不支持内嵌换行的应用程序...
### 移除字符串中空格和回车符 在日常的文本处理中,经常会遇到需要清理字符串中的空格、回车等字符的情况。这些字符可能会干扰数据处理或导致格式问题。下面将详细介绍如何通过编程手段有效地移除字符串中的空格和...
在Excel电子表格中,回车换行符(也称为换行、新行或回车符)经常被用来分隔文本,使数据呈现多行显示。然而,在某些情况下,如数据导入到其他系统或者进行特定计算时,这些换行符可能会造成问题。此时,批量清除或...
不同的编程环境和平台可能会使用不同的换行符。本文将详细介绍Java、JavaScript、Oracle、MySQL以及VBScript中使用的换行符。 ### Java中的换行符 在Java中,换行符通常使用`\r\n`(回车加换行)或`\n`(仅换行)...
5. 选择扩展查找模式,以便能够正确地查找和替换换行符。 6. 单击 "全部替换" 按钮,以将所有的换行符换成逗号。 这样,我们就能够快速地将多行的内容合并成一行,并用逗号进行分开。 在某些情况下,我们可能会...
在上面的代码中,我们使用正则表达式 `\\s*|\\t|\\r|\\n` 来匹配字符串中的空格、制表符、回车符和换行符。然后,我们使用 Matcher 对象的 replaceAll() 方法将这些无用字符替换为空字符串。 2. 使用 String 类的 ...
在 WORD 文档中,有两种类型的换行符:软回车和硬回车。软回车是手动换行符,按 Shift+Enter 键插入,而硬回车是段落标记,按 Enter 键插入。当 WORD 文档另存为 HTML 网页时,硬回车将转换成段落标记对 `<p></p>` ...
回车换行符是文本中用于表示新行的特殊字符组合,通常由`\n`(换行符)和`\r`(回车符)组成,尤其是在Windows系统中。而在Unix和Linux系统中,通常只使用`\n`作为换行符。了解如何有效地替换这些字符可以帮助我们...
把大量的文本文档制作成CHM文件,方便使用。用文本文档制作时,它不会自动换行,所以才把TXT文件转换成HTM文件。