\r\n , \r , \n what is the difference between them

2018-12-31 18:23发布

This question already has an answer here:

I need to ask about the difference in a string between \r\n , \r and \n

how is a string affected by each?

I have to replace the occurrences of \r\n and \r with \n but I cannot get how are they different in a string ...

i know that \r is like hitting enter \n is for a new line

标签: string
4条回答
不流泪的眼
2楼-- · 2018-12-31 18:59

All 3 of them represent the end of a line. But...

\r (Carriage Return) - moves the cursor to the beginning of the line without advancing to the next line

\n (Line Feed) - moves the cursor down to the next line without returning to the beginning of the line - In a *nix environment \n moves to the beginning of the line.

\r\n (End Of Line) - a combination of \r and \n

查看更多
有味是清欢
3楼-- · 2018-12-31 18:59

They are normal symbols as 'a' or 'ю' or any other. Just (invisible) entries in a string. \r moves cursor to the beginning of the line. \n goes one line down.

As for your replacement, you haven't specified what language you're using, so here's the sketch:

someString.replace("\r\n", "\n").replace("\r", "\n")

查看更多
裙下三千臣
4楼-- · 2018-12-31 19:09

A carriage return (\r) makes the cursor jump to the first column (begin of the line) while the newline (\n) jumps to the next line and eventually to the beginning of that line. So to be sure to be at the first position within the next line one uses both.

查看更多
荒废的爱情
5楼-- · 2018-12-31 19:14

\r = CR (Carriage Return) // Used as a new line character in Mac OS before X

\n = LF (Line Feed) // Used as a new line character in Unix/Mac OS X

\r\n = CR + LF // Used as a new line character in Windows

查看更多
登录 后发表回答