1. 개요
문자열 형식화 및 텍스트 출력 생성은 프로그래밍 중에 자주 발생합니다. 대부분의 경우 출력 형식을 지정하려면 문자열에 새 행을 추가해야합니다.
개행 문자를 사용하는 방법에 대해 논의 해 보겠습니다.
2. 문자열에 개행 문자 추가
운영 체제에는 새 줄의 시작을 나타내는 특수 문자가 있습니다. 예를 들어, 리눅스의 새로운 라인 "으로 표시됩니다 \ n" , 또한라는 줄 바꿈 . Windows에서 새 줄은 " \ r \ n"을 사용하여 표시되며 때때로 Carriage Return 및 Line Feed 또는 CRLF 라고도합니다 .
Java에서 새 줄을 추가하는 것은 문자열 끝에 " \ n" , " \ r" 또는 " \ r \ n" 을 포함하는 것만 큼 간단 합니다.
2.1. CRLF 줄 바꿈 사용
이 예에서는 두 줄의 텍스트를 사용하여 단락을 만들려고합니다. 특히, 우리가 원하는 2 호선이 후 새로운 라인에 표시 호선 .
Unix / Linux / New Mac 기반 OS의 경우 " \ n"을 사용할 수 있습니다 .
String line1 = "Humpty Dumpty sat on a wall.";
String line2 = "Humpty Dumpty had a great fall.";
String rhyme = line1 + "\n" + line2;
Windows 기반 OS를 사용하는 경우 " \ r \ n"을 사용할 수 있습니다 .
rhyme = line1 + "\r\n" + line2;
이전 Mac 기반 OS의 경우 " \ r"을 사용할 수 있습니다 .
rhyme = line1 + "\r" + line2;
새 줄을 추가하는 세 가지 방법을 시연했지만 안타깝게도 플랫폼에 따라 다릅니다.
2.2. 플랫폼 독립 라인 분리기 사용
코드가 플랫폼 독립적 이길 원할 때 시스템 정의 상수를 사용할 수 있습니다.
예를 들어 System.lineSeparator () 를 사용하여 줄 구분 기호를 제공합니다.
rhyme = line1 + System.lineSeparator() + line2;
또는 System.getProperty ( "line.separator")를 사용할 수도 있습니다 .
rhyme = line1 + System.getProperty("line.separator") + line2;
2.3. 플랫폼 독립적 개행 문자 사용
줄 구분 기호는 플랫폼 독립성을 제공하지만 문자열을 연결하도록합니다.
우리는 같은 것을 사용하는 경우 System.out.printf 또는 및 String.format , 다음 플랫폼 독립적 인 개행 문자 %의 N을 문자열 내에서 직접 사용할 수 있습니다 :
rhyme = "Humpty Dumpty sat on a wall.%nHumpty Dumpty had a great fall.";
이는 문자열 내에 System.lineSeparator () 를 포함하는 것과 동일 하지만 문자열을 여러 부분으로 나눌 필요는 없습니다.
3. HTML 페이지에 개행 문자 추가
HTML 페이지의 일부인 문자열을 생성한다고 가정합니다. 이 경우 HTML break 태그 <br>를 추가 할 수 있습니다 .
유니 코드 문자 "& # 13;"을 사용할 수도 있습니다 . (캐리지 리턴) 및 "& # 10;" (줄 바꿈). 이러한 문자는 작동하지만 모든 플랫폼에서 예상하는대로 정확하게 작동하지는 않습니다. 대신 줄 바꿈에 <br> 을 사용하는 것이 좋습니다 .
또한 일부 HTML 요소에서 "\ n" 을 사용 하여 줄을 끊을 수 있습니다.
전반적으로 HTML에서 줄을 나누는 세 가지 방법이 있습니다. 사용중인 HTML 태그에 따라 사용할 태그를 결정할 수 있습니다.
3.1. HTML 줄 바꿈 태그
HTML 나누기 태그 <br> 를 사용 하여 줄을 끊을 수 있습니다.
rhyme = line1 + "<br>" + line2;
로 <br> 라인을 나누는 태그와 같은 거의 모든 HTML 요소에서 작동 <몸> , <p> , <전>, 등 그러나, 그것은 작동하지 않습니다 <텍스트 영역> 태그를.
3.2. 개행 문자(줄바꿈)
텍스트가 <pre> 또는 <textarea> 태그로 묶인 경우 '\ n' 을 사용 하여 줄을 끊을 수 있습니다 .
rhyme = line1 + "\n" + line2;
3.3. 유니 코드 문자
마지막으로 유니 코드 문자 "& # 13;"을 사용할 수 있습니다 . (캐리지 리턴) 및 "& # 10;" (줄 바꿈)은 줄을 끊습니다. 예를 들어, <textarea> 태그에서 다음 중 하나를 사용할 수 있습니다.
rhyme = line1 + "
" + line2;
rhyme = line1 + "
" + line2;
를 들어 <전> 태그, 의지 작업 아래 라인의 양쪽 :
rhyme = line1 + "
" + line2;
rhyme = line1 + "
" + line2;
4. \ n 과 \ r 의 차이점
\ r 및 \ n 은 각각 ASCII 값 13 (CR) 및 10 (LF)으로 표시된 문자입니다. 그들은 모두 두 선 사이 휴식을 대표하는 , 그러나 운영 체제는 다르게 사용합니다.
Windows에서는 두 개의 문자 시퀀스가 새 행을 시작하는 데 사용되며 CR 바로 뒤에 LF가옵니다. 반대로 Unix 계열 시스템에서는 LF 만 사용됩니다.
Java 응용 프로그램을 작성할 때 응용 프로그램이 실행되는 운영 체제에 따라 다르게 작동하므로 사용하는 줄 바꿈 문자에주의해야합니다.
가장 안전하고 상호 호환되는 옵션은 System.lineSeparator () 를 사용하는 것 입니다. 이렇게하면 운영 체제를 고려할 필요가 없습니다.
5. 결론
이 기사에서는 Java의 문자열에 줄 바꿈 문자를 추가하는 방법에 대해 설명했습니다.
System.lineSeparator () 및 System.getProperty ( "line.separator")를 사용하여 새 줄에 대한 플랫폼 독립적 코드를 작성하는 방법도 살펴 보았습니다 .
마지막으로 HTML 페이지를 생성하는 경우 새 줄을 추가하는 방법으로 마무리했습니다.
이 기사의 전체 구현은 GitHub 에서 찾을 수 있습니다 .
- https://docs.spring.io/spring-framework/docs/current/reference/html
- https://www.baeldung.com/java-string-newline
'Java' 카테고리의 다른 글
Spring @Value 사용방법(예제) (0) | 2021.03.12 |
---|---|
스프링 부트 액추에이터 (0) | 2021.03.12 |
Java로 파일을 읽는 방법 (0) | 2021.03.11 |
OkHttp 가이드 (0) | 2021.03.11 |
Keycloak과 함께 사용자 지정 사용자 공급자 사용 (0) | 2021.03.11 |