자바에서 print나 println 등의 메소드를 통해서 콘솔에 출력할때


메소드 내용에 \n을 붙이면 개행이 되는게 확인되는데


텍스트 출력과 관련된 메소드들은 (FIleWriter나 PrintWriter 계열..) 메소드 내에서 \n을 붙이면


텍스트파일에 정상적으로 개행이 되지 않는다.


왜냐하면 내가 사용하는 os인 윈도우즈에서는 개행을 CR+LF (\r\n)으로 처리하는데,


유닉스 계열에서는 LF(\n)로 개행을 처리하기 때문이다.


그래서, 텍스트파일에 개행을 하려면 자신의 os에 맞게끔 개행문자를 넣어주어야 하는데,


이럴 때 단순히 System.getProperty("line.separator") 메소드를 사용하면 자신의 os가 개행을 \n로 처리


하는지, \r\n로 처리하는지를 String으로 반환하기 때문에 위 메소드의 사용을 고려해 볼 수도 있다.


그런데, 그러면 콘솔상에서 출력하는 경우에는 \n만 표기해도 개행이 잘 되는 이유는


\n을 알아서 내부적으로 \r\n으로 처리해서 출력한건지, 아니면 콘솔 상에서 출력할 때는 편의상 두 방법 


모두 개행이 되도록 이클립스 콘솔 내에서 구현을 해 놓은건지 궁금하다.


비주얼스튜디오에서는 \n으로 써도 알아서 내부적으로 \r\n으로 바꿔주었던 것 같은데..







Posted by huammmm1
,