前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >编程小知识之换行

编程小知识之换行

作者头像
用户2615200
发布2018-08-02 16:47:05
4750
发布2018-08-02 16:47:05
举报

引子

之前一直依稀有些认识:不同操作系统间的换行符有所差异,但是并没有很详细的了解,对于换行符差异可能引起的问题也没有多少概念.近来遇到了一个在Android上读取文件失败的问题,最后发现正是换行符差异造成的,遂而查阅了一些相关资料,在此简单记下~

知识

换行符的来历不赘述了,有兴趣的朋友可以看下这里,总之,目前大概有 3种 换行符的表示方式(仅罗列主要操作系统):

Windows

Unix,Linux(包括Android和iOS)以及Mac OS 10(包括)以上版本

Mac OS 9(包括)以下版本

\r\n

\n

\r

其中:

\r 为回车符号CR(Carriage Return, Unicode中的编码为 000D) \n 为换行符号LF(Line feed, Unicode中的编码为 000A)

示例

OK,基础知识就这么些,现在看个示例:

假设我在Windows上创建了一个文本文件(用来配置某个文件的路径), 内容如下(注意文件内容最后有换行):

代码语言:javascript
复制
FolderName/FileName

文件实际的保存内容是这样的(注意换行的表示):

代码语言:javascript
复制
FolderName/FileName\r\n

然后我们尝试在Linux上读取该文件,由于Linux中认为\n才是换行符,所以最后读取到的内容是这样的(注意文件内容较之前多了一个\r):

代码语言:javascript
复制
FolderName/FileName\r

之前提到的那个Android上读取文件失败的问题就在于此了~

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年01月26日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引子
  • 知识
  • 示例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档