답변 1
- 0
줄바꿈 문자(EOL: End of Line)는 텍스트에서 한 줄의 끝과 다음 줄의 시작을 표시하는 특수 문자입니다. 운영체제마다 서로 다른 방식을 사용하며, 이는 텍스트 파일 호환성에 영향을 미칩니다.
종류 표기 ASCII 주 사용 운영체제 설명 LF \n
10 Unix/Linux/macOS(OS X 이후) Line Feed(줄 바꿈) CR \r
13 구형 Mac OS(9 이전) Carriage Return(캐리지 리턴) CRLF \r\n
13+10 Windows/DOS CR과 LF의 조합 이러한 차이는 역사적으로 텔레타이프 시대에서 비롯되었는데, CR은 캐리지(인쇄 헤드)를 줄의 시작으로 되돌리고, LF는 종이를 한 줄 올리는 별도의 물리적 작업이었으며, 각 운영체제가 이 개념을 다르게 채택했기 때문입니다.
상세 설명
LF (Line Feed,
\n
)- Unix, Linux, 현대 macOS 시스템 표준
- 커서를 다음 줄 시작으로 이동
- 예) "Hello\nWorld" -> 두 줄로 표시
CR (Carriage Return,
\r
)- 구형 Mac OS(9 이전) 표준
- 커서를 현재 줄 처음으로 이동
- 예) "Hello\rWorld" -> 커서가 줄의 처음으로 돌아가서 "Hello"를 "World"로 덮어씀
CRLF (Carriage Return + Line Feed,
\r\n
)- Windows, DOS 시스템 표준
- CR과 LF 조합으로 다음 줄 시작으로 이동
- 예) "Hello\r\nWorld" -> 커서를 줄의 시작으로 이동한 후 다음줄로 넘김
예시
같은 내용의 텍스트 파일이라도 운영체제에 따라 다르게 저장됩니다.
Hello World Nice to meet you
- Unix/Linux 파일:
Hello World\nNice to meet you\n
- Windows 파일:
Hello World\r\nNice to meet you\r\n
- 구형 Mac 파일:
Hello World\rNice to meet you\r
이러한 차이점은 텍스트 파일을 다른 운영체제 간에 전송할 때 호환성 문제를 일으킬 수 있어서, 현대 텍스트 에디터들은 대부분 이 차이를 자동으로 처리해줍니다.
링크