java字符串 n换行符_java切割字符串中的回车应注意是\n\r不是\n
我们在Java中如果用到处理要分隔字符串,不免会用到String的split(String regex)函数,这时候我们要注意的。
如果想以回车来分隔字符串,很多同学都会这样做。下面是例子:
String[] res = str.split("\n");
但是这样可能会有一个潜在的问题,如果我们的str字符串是从文本文件中得到的,那么就会出现一个隐患。
假如我们的文件为test.txt,里面的内容为:
This(回车)
is testing(无回车)
这时候问题就来了。。。
1、如果这个文件是在Linux或者mac下建立编写的,那么用str.split("\n")会出现正确的结果,如下图:
2、如果这个文件是在window下编写的,那么就该注意了,如果你还是用str.split("\n")就会出现错误的结果,如下图:
有人可能说没什么区别啊,仔细看好了,第2个的结果,this和is testing中间有个空行,而第一个没有。为什么会出现这个结果。
这还要从回车符来讲,简单来说,window下回车是由\r\n(即0x0D和0x0A)组成的,注意不是\n\r,而linux下回车是由\n(即0x0A)小伙伴们别搞错了,这个我自己证实过,
这个window下编辑的文件,我用16进制打开的,大家看到第3,4列中的是0D、0A,也就是回车。
而在Linux下是这个样子的:
这个是linux下的文件用16进制打开的情况,红圈中只有个0A,也就是回车。
到这里我们就明白了,刚才在window下用split("\n")出现的结果,则是this\r和is testing两个部分。
而在linux下用split("\n")出现的结果,则是this和is testing两个部分,this后面则就没有\r。
java字符串 n换行符_java切割字符串中的回车应注意是\n\r不是\n相关推荐
- java通用文件换行符_java通用文件换行符
java通用文件换行符 [2021-02-07 00:14:46] 简介: java中的换行符是[\n]和[\r].二者的区别是:[\r]表示回车,[\n]表示新行,但两者都可以实现换行.具体实现方 ...
- java获得系统换行符_java获取系统换行符
检验检疫信息系统 Java 1 范围 本标准规定了检验检疫信息系统采用Java语言编码需遵循的基本内容.基本内容包括文件.文件组 织.排版.注释.声明.命名规范.本标准...... <使用 Ja ...
- java seek指针 换行符_Java网络编程探究|乐字节
大家好,我是乐字节小乐,上次给大家讲述了Java中的IO流之输出流|乐字节,本文将会给大家讲述网络编程. 主要内容如下: 网络 网络分层 IP位置 端口port 网络编程 一. 网络 1.概念 网络即 ...
- java写入excel换行符_读取excel中字符包含回车换行时,当写入文件后,换行符号改变...
行内超网系统在自动化测试工具时碰到一个有意思的问题,在windows系统上运行自动化测试工具的智能发起端去模拟人行发送xml报文,智能发起端读取报文时,如果xml报文中含有换行操作,超网系统处理发起端 ...
- java replace换行符_Java 替换字符串中的回车换行符的方法
使用正则表达式进行替换: 代码片段: string documenttxt = entityutils.tostring(entity,"gbk");//获取数据 document ...
- 除非换行符在格式字符串中,否则为什么在调用后printf不会刷新?
除非换行符在格式字符串中,否则为什么在调用后printf不会刷新? 这是POSIX行为吗? 每次如何立即使printf刷新? #1楼 stdout已缓冲,因此仅在换行符输出后输出. 要立即获得输出,请 ...
- python字符串拼接换行符_【编测编学】零基础学python_03_字符串(拼接+换行+制表符)...
字符串拼接 在编码的过程很多时候都会用到字符串的拼接,例如,你可能想将姓和名存储在不同的变量中,等要显示姓名时再将它们合而为一: first_name = "li" last_na ...
- java 流换行符_java流中的换行符在javascript中的表示
前段时间做项目,用struts+ajax技术,结果出现在js中获取的responseText的值与action传过来的值不相等的现象. 在action中用 PrintWriter out = http ...
- Java中跨平台换行符%n
众所周知在不同平台中表示换行符的方式是不同的 比如Windows,Linux,Mac中: (1)在DOS和Windows中,每行结尾是 "\r\n": (2)Linux系统里,每行 ...
最新文章
- C++中插件使用举例
- 用指针式万用表欧姆档检测发光二极管
- =在php中,PHPExcel在PHP7中,save(‘php://output’)出现ERR_INVALID_RESPONSE错误的解决方法...
- c++的文件输入/输出
- LeetCode 551. 学生出勤记录 I
- java timezone_Java TimeZone getAvailableIDs()方法与示例
- 参考文献的类型及标识
- MySql 一条更新语句是如何执行的? MySql杂谈、MySql WAL 技术
- python 添加图片_python3 tkinter添加图片和文本
- VIA1708s声卡前置麦克设置问题
- Treeview动态添加用户控件 取值和传值(第二种样式)
- 综述|重邮高新波等最新《少样本目标检测算法》
- 黑群晖一键生成视频缩略图
- 什么叫明文,什么叫密文,为什么不允许在数据库里明文保存密码?
- 如何用keil5打开keil4工程
- linux ar3012蓝牙驱动,佳能 Bluetooth AR3012 驱动程序下载-更新佳能软件(蓝牙)
- 博弈论:子博弈精炼均衡(子博弈都是纳什均衡,比纳什均衡更强的概念)
- ByteBuffer的原理和使用详解
- Jquery利用ajax调用asp.net webservice的各种数据类型(总结篇)
- python上传大文件s3_使用Python boto3上传Windows EC2实例中的文件至S3存储桶中
热门文章
- 求难、求拙、求慢、求少
- python底层代码里面的参数_梯度下降算法讲解及python底层实现
- java openldap_java操作OpenLdap示例
- sublime_text配置php调试环境,SublimeText2配置PHP调试环境(在windows环境下)
- macbookair有没有touchbar_买 MacBook Pro 到底要不要选 Touch Bar 版?看清需求后再下手...
- java打包要依赖maven库吗_maven-将依赖的 jar包一起打包到项目 jar 包中
- excel 按数据拆分 xlam_Excel按类别名称自定义排序:玩转Excel数据
- matlab 冒号操作符
- Python3 基础语法(笔记1)
- 【Verilog HDL 训练】第 07 天(串并转换)