2013-05-31 1 views
1

여기 파일에 일부 데이터를 쓰고 싶어하고 내 코드입니다 :하지 올바른 입력

for (Season s : seasons) { 
      if (s.getYear() >= start && s.getYear() <= end) { 
       line += s.getYear() + ", " + s.getWinTeamName() + ", " 
         + s.getMinorPremiersTeam() + ", " 
         + s.getWoodenSpoonTeam()+ "\n"; } 
} 
System.out.println("File created.\n"); // Informing the user about 
// the creation of the file. 
out.write(line); 
out.close(); 

내 파일이 생성하지만 내가 무엇을 얻을입니다 :

2005, Wests Tigers, Parramatta, Newcastle2006, Broncos, Storm, Rabbitohs 

을하지만, 내가 원하는 그것은 할 수 :

2005, Wests Tigers, Parramatta, Newcastle 
2006, Broncos, Storm, Rabbitohs 

가 나는 라인 변수의 끝에 "\ n을"을 추가하면 해당 문제를 해결 것이라고 생각하지만 었소. 그 문제를 해결할 수있는 방법에 대한 제안 사항이 있으십니까?

+0

그것은 확인을 보인다. \ n을 \ r \ n으로 바꾸십시오. 일부 텍스트 편집기 (예 : 메모장)가 \ n을 올바르게 표시하지 않습니다. – manabreak

+0

당신의 println()은'\ n'을 필요로하지 않습니다. methodname은'print line'을 의미하므로 이미 새로운 줄을 사용합니다. – Aquillo

+0

보다 일반적인 코드를 사용하려면 [행 분리 기호] (http://stackoverflow.com/questions/207947/java-how-do-i-get-a-platform-independent-new-line- 문자) 대신. @manabreak의 제안 덕분에 – Dukeling

답변

1

java.io.BufferedWriter을 사용하는 경우 .newLine() 메서드는 적절한 줄 구분 기호를 삽입합니다.

for (Season s : seasons) 
{ 
    if (s.getYear() >= start && s.getYear() <= end) 
    { 
     String line = s.getYear() + ", " + s.getWinTeamName() + ", " 
         + s.getMinorPremiersTeam() + ", " 
         + s.getWoodenSpoonTeam(); 
     out.write(line); 
     out.newLine(); 
    } 
} 
0
for (Season s : seasons) { 
     if (s.getYear() >= start && s.getYear() <= end) { 
      line += s.getYear() + ", " + s.getWinTeamName() + ", " 
        + s.getMinorPremiersTeam() + ", " 
        + s.getWoodenSpoonTeam()+ "\r\n"; } 
} 

System.out.println("File created.\n"); // Informing the user about 
             // the creation of the file. 
out.write(line); 
out.close(); 
+0

에게 감사드립니다. – roro