CR&LF
- LF(Line Feed) 换行符 ASCII编码表中
'\n'
对应的是十进制码值为10
,十六进制为0x0A
- CR(Carriage Return)回车符 ASCII编码表中
'\r
对应的是十进制码值为13
,十六进制为0x0D
各大OS上的区别
- Unix-like系统上的文件默认换行符为LF
- Windows上的文件默认为 CRLF
- Mac上的文件默认为CR
带来的问题?
对我而言,我的工作环境是Mac OS X
,当我处理Windows
上的数据报表时。必须注意先转化,所以可以首先显示一下这些空白字符
比如使用
cat -A …
^M
字符可以通过 Ctrl+V Ctrl+M
键盘输入.表示回车符
$
可以通过一下方式删除
- cat windows_format.txt |tr -d ‘\r’
- vim 的command模式下:%s/^M//g
- sed -e ‘s/\x0D//g’ mydebug.c > temp_mydebug.c23
这里插一句题外话,我们如何在代码中表示某个字符