2013-08-02 3 views
0

Эй Весь мой код настроен так ..Использование StreamWriter Append не работает

Method() 
using (StreamWriter writer = new StreamWriter(@"file")) 
     { 
      writer.WriteLine("Service Start {0}", DateTime.Now, true); 
     } 

Method() 
using (StreamWriter writer = new StreamWriter(@"filet")) 
     { 
      writer.WriteLine("Service Stopped {0}", DateTime.Now, true); 
     } 

Мой текстовый файл не получает добавляется, вместо этого он становится заменен. Я думал, что установка true должна предполагать добавление файлов, но это не так. Это C# Windows сервис App

ответ

0

Используйте вместо этого:

StreamWriter writer = new StreamWriter(@"file", true); 

С помощью этой перегрузки конструктора StreamWriter вы выбираете, если вы добавляете файл, или перезаписать.

+0

спасибо, решение NotCoding работал, но не для первой линии с использованием его вместе с твоим решением проблемы. – CSharper

0

Основываясь на том, что у вас есть это предположение?

Платит, чтобы не предполагать подобные вещи. Read the documentation и посмотреть, что он говорит.

Параметр пути может быть именем файла, в том числе файлом на общем ресурсе UNC. Если файл существует, он перезаписывается; в противном случае создается новый файл.

Используйте другой конструктор, например, который использует поток.

0

Я не знал, что это было то, что перегрузка должна была сделать ... http://msdn.microsoft.com/en-us/library/system.io.streamwriter.writeline.aspx

Вместо этого попробуйте так:

using (StreamWriter writer = File.AppendText("yourfilename")) 
    { 
     writer.WriteLine("Service Stopped {0}", DateTime.Now, true); 
    } 
+0

Это тоже сработало, чтобы посмотреть мой комментарий в ответе – CSharper

Смежные вопросы