2017-11-06 10 views
0

나는 이것이 "일 하나"질문 좀 알고,하지만 난 여전히 문제가 내 스트림 작가가 각 시간 이후에 빈 줄을 쓰는 이유는C# 왜 StreamWriter는 파일에 쓸 때마다 빈 줄을 쓰고 있습니까?

namespace PostFinder 
{ 
    class HistorySaver 
    { 
     public static void Save(string item, string path) 
     { 
      StreamReader sre = new StreamReader(path); 
      string historyList = sre.ReadToEnd(); 
      sre.Dispose(); 
      StreamWriter sr = new StreamWriter(path); 
      sr.WriteLine(historyList+sr.NewLine+item); 
      sr.Dispose(); 
     } 
    } 
} 
+3

는'WriteLine'는 줄 바꿈을 추가합니다. 쓰기를 시도하십시오. – astidham2003

답변

2
sr.WriteLine(historyList+sr.NewLine+item); 

.WriteLine() 방법을 쓴다 인식하지 못했습니다 전달한 내용 다음에 줄 끝 문자를 넣습니다. 그 캐릭터를 원하지 않으면 .Write()을 사용하십시오.

+0

물론! 고맙습니다. – TheSpiceHoarder

2

파일에 텍스트를 추가하기 만하면되므로 기존 내용을 읽고 새 내용으로 다시 쓰려면 스트림 리더를 열 필요가 없습니다.

아래에서 한 번에 원하는 모든 작업을 수행 할 수 있습니다. 입력 경로 파일이 존재하지 않으면 새로운 경로 파일이 생성되고 이미 존재하는 경우 새로운 항목을 추가합니다.

namespace PostFinder 
{ 
    class HistorySaver 
{ 
    public static void Save(string item, string path) 
    { 
     File.AppendAllText(path, item + Environment.NewLine); 
    } 
} 

}

+0

감사! 나는 이것을 기억할 것이다. – TheSpiceHoarder