У меня есть потоковик, который записывает данные из потока процессов в файл журнала. Когда я показываю выход с Console.WriteLine()
Результат выглядит следующим образом:Streamwriter пишет разные, чем Console.WriteLine()
SW DATA = Sep 23, 2016 9:40:37 AM hudson.remoting.jnlp.Main$CuiListener status
SW DATA = INFO: Trying protocol: JNLP3-connect
SW DATA = Sep 23, 2016 9:40:38 AM hudson.remoting.jnlp.Main$CuiListener status
SW DATA = INFO: Server didn't accept the handshake: Unknown protocol:Protocol:JNLP3-connect
SW DATA = Sep 23, 2016 9:40:38 AM hudson.remoting.jnlp.Main$CuiListener status
SW DATA = INFO: Connecting to Machine:51136
SW DATA = Sep 23, 2016 9:40:38 AM hudson.remoting.jnlp.Main$CuiListener status
SW DATA = INFO: Trying protocol: JNLP2-connect
SW DATA = Sep 23, 2016 9:40:38 AM hudson.remoting.jnlp.Main$CuiListener status
SW DATA = INFO: Connected
Но когда я открываю Textfile, это выглядит следующим образом:
INFO: Connected
:38 AM hudson.remoting.jnlp.Main$CuiListener status
LP3-connect
6231dd with ID
ad is recommended.
Мой код:
static void ShowOutput(string data)
{
if (data != null)
{
FileStream fileStream = new FileStream(@"c:\temp\LogFile.txt", FileMode.OpenOrCreate, FileAccess.Write);
Console.WriteLine("SW DATA = " + data);
using (StreamWriter w = new StreamWriter(fileStream))
{
w.WriteLine(data);
w.Flush();
}
fileStream.Close();
}
}
Это выглядит как писатель пишет только конец каждой Линии.
Данные поступают из процесса консоли, подобный следующему:
http://www.codeproject.com/Articles/4665/Launching-a-process-and-displaying-its-standard-ou
Мой вопрос:
Как я могу предотвратить это?
Почему бы не '' 'File.AppendAllText'''? – tym32167