文章目录

  • "\r"和"\n"的区别
    • "\r"和"\n"的由来
    • 回车键和输入的"\n"有不同吗?
  • 系统影响
  • java使用换行符的几种方式

“\r"和”\n"的区别

回车 \r 本义是光标重新回到本行开头,r的英文return,控制字符可以写成CR,即Carriage Return
换行 \n 本义是光标往下一行(不一定到下一行行首),并不移动左右。n的英文newline,控制字符可以写成LF,即Line Feed
也就是说,如果想要到下一行行首,一般的写法应该是"\r\n",0D 0A,即 ASCII 码对应的 ‘\r’和’\n’
注意:\r,\n的顺序是不能够对换的,否则不能实现换行的效果.
这个顺序是固定的,但实际生活中不是这样,有时输入"\n"就能达到我们想要的效果,这是为什么呢?

“\r"和”\n"的由来

原先的机械打字机,打完一行后会有一个自动卷动纸带的动作,进行换行,大约0.2s,受限于机械,当时可以在这段时间内输入两个字符,而在这期间输入的字就会丢失.
后来人们对其进行了改进,加入了"字车",每次打完一行都要重新拨动上面的"字车",代表,要对下一行首位进行书写,此时打字机自动回到行首,并且滚动下面的卷纸滚轮换到下一行,模拟两个字符输出进行占位
后来研发计算机键盘的时候,延续了这个习惯,每次换行也要"\r\n"
但是前期电脑的存储器很珍贵,有人觉得这两个字符太浪费内存空间,就阉割掉了一个,只剩"\n",但是还是有系统保留了"\r\n"换行的习惯,因此不同系统间对于换行的定义也不同,比如windows还保留着"\r\n"的定义,而linux是"\n",因此两个打开对方的文件就会显示出现差异

回车键和输入的"\n"有不同吗?

回车键在windows代表"\r\n",即代表了两个字符,比"\n"多"\r";在linux则代表"\n",
出现这种差异在于不同系统对于换行的定义不同

硬回车就是普通键盘按回车产生的,它在换行的同时也起着段落分隔的作用。

软回车是用 Shift + Enter 产生的,它换行,但是并不换段,即前后两段文字在 Word 中属于同一“段”。在应用格式时有用

软回车能使前后两行的行间距大幅度缩小,因为它不是段落标记,要和法定的段落标记——硬回车区别出来。硬回车的html代码是

,段落的内容就夹在里面,而软回车的代码很精悍:
。网页的文字如果复制到word中,则硬回车变为弯曲的箭头,软回车变为向下的箭头。

系统影响

换行符会随着系统的不同而不同
windows下的文本文件换行符:\r\n

Mac linux/unix下的文本文件换行符\n
因此常见的现象是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号
如图,0a在ascII码中是"\n"的意思,因此如果文件在linux中打开,可以和windows的比较看出区别

因此,java如果在win应用,java应该使用的换行符是"\r\n"

java使用换行符的几种方式

有以下3种方法:
1.使用java中的转义符"\r\n":
2.BufferedWriter的newline()方法:

BufferedWriter bw=new BufferedWriter(fos);
bw.newline();

3.使用System.getProperty()方法: ·

java常识-java怎么换行相关推荐

  1. 【Java开发语言 01】第一章 Java语言概述(基础常识+Java语言概述+Java程序运行机制及运行过程+Java语言环境的搭建+开发体验hello world+错误:编码GBK的不可映射字符)

    java入门-第一章Java语言概述 1基础常识 软件开发 人机交互方式 常用的DOS命令(win系统,有一些直接通过命令执行的) 2 Java语言概述 什么是计算机语言 关于面向对象和面向过程 Ja ...

  2. 在java中转义符 n代表什么_在Java中,表示换行符的转义字符是()。 A.\nB.\fC.n D.\ddd...

    在Java中,表示换行符的转义字符是(). A.\nB.\fC.n D.\ddd 更多相关问题 单选(2分) Who\\\'s one the biggest challenges in design ...

  3. Java 导出excel进行换行

    java 导出Excel进行换行 String.valueOf((char)10) 在导出excel 的时候,如果原始文字中含有 \n 字符, 如果把 \n 替换为<br/>,excel不 ...

  4. html 取消回车,java去除html回车换行

    java去除html回车换行 [2021-01-30 06:14:52]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(" ...

  5. java闰年满五换行_【计算机二级Java语言】卷013

    选择题 公共知识 [1]设数据结构B = (D, R), 其中 D = { a, b, c, d, e, f } R = { (f, A), (d, B), (e, D), (c, e), (a, C ...

  6. java 分行符_java换行符有哪些

    在java中可以使用的换行符有:"\n"表示新行."\r"表示回车,\r \n". 在java中需要在字符串(文本)末尾包含换行符"\n&q ...

  7. java抓取网页标题内容_[Java教程]java 网页页面抓取标题和正文

    [Java教程]java 网页页面抓取标题和正文 0 2014-07-10 09:01:30 import java.io.BufferedReader;import java.io.IOExcept ...

  8. 4.6 W 字总结!Java 11—Java 17特性详解

    作者 | 民工哥技术之路 来源 | https://mp.weixin.qq.com/s/SVleHYFQeePNT7q67UoL4Q Java 11 特性详解 基于嵌套的访问控制 与 Java 语言 ...

  9. 菜鸟教程中Java语法(Java教程+Java面向对象)

    Java基本数据类型 Java变量类型 Java运算符 Java循环语句 Java条件语句 Java switch case Java Number & Math类 Java Characte ...

  10. java/01/java简介,java基本概念,java基本类型的划分

    厚积薄发 java笔记 java/01/java简介,java基本概念,java基本类型的划分 java :一门面向对象的计算机编程语言,java称得上是行业开发标准结构,1990年代初开发,1995 ...

最新文章

  1. 使用JDBC进行MySQL 5.1的数据连接、查询、修改等操作练习。
  2. cocos2d-js 3.0 RC0 监听返回键、菜单键、进入后台(home键)、恢复显示等事件
  3. 《敏捷迭代开发:管理者指南》—第2章2.9节增量交付
  4. MySQL——修改root密码的4种方法(以windows为例)
  5. 2267: scholarship(dfs , STL)
  6. EMQ源码之--EMQ的启动
  7. C++实现各种交换排序(冒泡,快速)
  8. ACL 2010-2020研究趋势总结
  9. 人工智障学习笔记——深度学习(2)卷积神经网络
  10. 【AI视野·今日CV 计算机视觉论文速览 第218期】Fri, 11 Jun 2021
  11. 职场动物进化手册-读后感
  12. 《前端》阿里字体库iconfont使用方法
  13. C语言基础学习——基本数据类型(float型)
  14. 为什么从移动携号转网到了联通,来电显示是中国移动?
  15. 排列组合 、牛顿二项式定理、多项式系数
  16. html怎么设置网页的大小怎么设置,css怎么设置字体大小
  17. termux播放mp3音频
  18. DistributedDataParallel(DDP)Pytorch 分布式训练示例及注意事项
  19. uniapp获得经纬度和城市
  20. 北京搬家货运公司汇总

热门文章

  1. 终于来了!Win11 预览版镜像提前出世(附 ISO 下载)
  2. jQuery京剧人物动画
  3. 已知鸡兔共35只c语言,行测数量关系技巧:巧解鸡兔同笼问题
  4. 服务器终端性能测试之iometer
  5. c语言流程图形状什么意思,Visio中的基本流程图的各个形状的含义是什么?
  6. 《Java从入门到放弃》框架入门篇:在MyEclipse中配置Mybatis框架
  7. java数据结构 mobi_数据结构:Java语言描述(第2版) pdf epub mobi txt 下载
  8. 日志易陈军:迭代加速,日志分析助力IT智能化
  9. linux rtl8723bu 蓝牙,RTL8723DS蓝牙问题分析
  10. yuv420转rgba