[java] 플랫폼 종속 줄 바꿈 문자는 어떻게 얻습니까?

Java에서 플랫폼 종속 줄 바꿈을 어떻게 얻습니까? 나는 "\n"어디에서나 사용할 수 없습니다 .



답변

line.separator 특성 외에도 java 1.5 이상 및 String.format (또는 기타 형식화 메소드)을 사용하는 경우 다음 %n과 같이 사용할 수 있습니다 .

Calendar c = ...;
String s = String.format("Duke's Birthday: %1$tm %1$te,%1$tY%n", c);
//Note `%n` at end of line                                  ^^

String s2 = String.format("Use %%n as a platform independent newline.%n");
//         %% becomes %        ^^
//                                        and `%n` becomes newline   ^^

자세한 내용은 Java 1.8 API for Formatter 를 참조하십시오.


답변

Java 7에는 이제 System.lineSeparator()메소드가 있습니다.


답변

당신이 사용할 수있는

System.getProperty("line.separator");

줄 구분자를 얻기 위해


답변

줄 바꿈을 파일에 쓰려고하면 BufferedWriter의 newLine () 메서드를 사용하면됩니다.


답변

이것도 가능합니다 : String.format("%n").

또는 String.format("%n").intern()일부 바이트를 저장합니다.


답변

평민 – 랭 라이브러리라는 사용할 수있는 상수 필드가 SystemUtils.LINE_SEPARATOR을


답변

StringBuilder newLine=new StringBuilder();
newLine.append("abc");
newline.append(System.getProperty("line.separator"));
newline.append("def");
String output=newline.toString();

위의 스 니펫에는 플랫폼에 관계없이 새 줄로 구분 된 두 개의 문자열이 있습니다.