Windows、Linux和MAC的CR, LF, CR/LF换行符
生活随笔
收集整理的這篇文章主要介紹了
Windows、Linux和MAC的CR, LF, CR/LF换行符
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在文本處理中, CR, LF, CR/LF是不同操作系統(tǒng)上使用的換行符.?
Dos和windows: 采用回車+換行CR/LF表示下一行.?
UNIX/Linux ?: 采用換行符LF表示下一行.?
MAC OS ? ? ?: 采用回車符CR表示下一行.?
CR用符號(hào)'\r'表示, 十進(jìn)制ASCII代碼是13, 十六進(jìn)制代碼為0x0D;?
LF用符號(hào)'\n'表示, 十進(jìn)制ASCII代碼是10, 十六制為0x0A.?
所以Windows平臺(tái)上換行在文本文件中是使用 0d 0a 兩個(gè)字節(jié)表示, 而UNIX和蘋果平臺(tái)上換行則是使用0a或0d一個(gè)字節(jié)表示.?
一般操作系統(tǒng)上的運(yùn)行庫會(huì)自動(dòng)決定文本文件的換行格式. 如一個(gè)程序在windows上運(yùn)行就生成CR/LF換行格式的文本文件,而在Linux上運(yùn)行就生成LF格式換行的文本文件。?
在一個(gè)平臺(tái)上使用另一種換行符的文件文件可能會(huì)帶來意想不到的問題, 特別是在編輯程序代碼時(shí),有時(shí)候代碼在編輯器中顯示正常, 但在編輯時(shí)卻會(huì)因?yàn)閾Q行符問題而出錯(cuò)。?
很多文本/代碼編輯器帶有換行符轉(zhuǎn)換功能, 使用這個(gè)功能可以將文本文件中的換行符在不同格式單互換。在不同平臺(tái)間使用FTP軟件傳送文件時(shí), 在ascii文本模式傳輸模式下, 一些FTP客戶端程序會(huì)自動(dòng)對(duì)換行格式進(jìn)行轉(zhuǎn)換。經(jīng)過這種傳輸?shù)奈募止?jié)數(shù)可能會(huì)發(fā)生變化。如果你不想ftp修改原文件, 可以使用bin模式(二進(jìn)制模式)傳輸文本。?
表一:?
標(biāo)志CRLF
符號(hào) 十進(jìn)制Ascii碼數(shù) 十六進(jìn)制數(shù)
\r 13 0x0D
\n 10 0x0A
表二:?
標(biāo)志換行
Win/Dos linux,Unix等
\r\n(<CR><LF>) \n(<LF>) ? ? ? ? ? ? ? ? ? ?
Dos和windows: 采用回車+換行CR/LF表示下一行.?
UNIX/Linux ?: 采用換行符LF表示下一行.?
MAC OS ? ? ?: 采用回車符CR表示下一行.?
CR用符號(hào)'\r'表示, 十進(jìn)制ASCII代碼是13, 十六進(jìn)制代碼為0x0D;?
LF用符號(hào)'\n'表示, 十進(jìn)制ASCII代碼是10, 十六制為0x0A.?
所以Windows平臺(tái)上換行在文本文件中是使用 0d 0a 兩個(gè)字節(jié)表示, 而UNIX和蘋果平臺(tái)上換行則是使用0a或0d一個(gè)字節(jié)表示.?
一般操作系統(tǒng)上的運(yùn)行庫會(huì)自動(dòng)決定文本文件的換行格式. 如一個(gè)程序在windows上運(yùn)行就生成CR/LF換行格式的文本文件,而在Linux上運(yùn)行就生成LF格式換行的文本文件。?
在一個(gè)平臺(tái)上使用另一種換行符的文件文件可能會(huì)帶來意想不到的問題, 特別是在編輯程序代碼時(shí),有時(shí)候代碼在編輯器中顯示正常, 但在編輯時(shí)卻會(huì)因?yàn)閾Q行符問題而出錯(cuò)。?
很多文本/代碼編輯器帶有換行符轉(zhuǎn)換功能, 使用這個(gè)功能可以將文本文件中的換行符在不同格式單互換。在不同平臺(tái)間使用FTP軟件傳送文件時(shí), 在ascii文本模式傳輸模式下, 一些FTP客戶端程序會(huì)自動(dòng)對(duì)換行格式進(jìn)行轉(zhuǎn)換。經(jīng)過這種傳輸?shù)奈募止?jié)數(shù)可能會(huì)發(fā)生變化。如果你不想ftp修改原文件, 可以使用bin模式(二進(jìn)制模式)傳輸文本。?
表一:?
標(biāo)志CRLF
符號(hào) 十進(jìn)制Ascii碼數(shù) 十六進(jìn)制數(shù)
\r 13 0x0D
\n 10 0x0A
表二:?
標(biāo)志換行
Win/Dos linux,Unix等
\r\n(<CR><LF>) \n(<LF>) ? ? ? ? ? ? ? ? ? ?
所以在用println函數(shù)的時(shí)候,導(dǎo)致的換行在不同操作系統(tǒng)中可能不一樣,在windows下表現(xiàn)的是“\r\n”,使用的時(shí)候要注意。
總結(jié)
以上是生活随笔為你收集整理的Windows、Linux和MAC的CR, LF, CR/LF换行符的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VS高版本编写C程序的C4996错误
- 下一篇: 8086寄存器