Streamwriter: chiarimenti

giovedì 29 maggio 2008 - 08.57

liveforever81 Profilo | Junior Member

Salve...

non riesco proprio a raccapezzarmi con l'uso degli streamwriter.

Devo creare un file di log che mi tracci ogni operazione effettuata dalla mia applicazioncina Console [c#].

Dichiarazione:
Filestream fs_log = null;
StreamWriter sw = null;

Indico la stringa che rappresenta il percorso del file di log:
string logFile = ConfigurationManager.AppSettings["log"] + "log.txt";

All'interno dell'applicazione, poi, istanzio i 2 stream:
fs_log = new FileStream(logFile, FileMode.Create, FileAccess.ReadWrite);
sw = new StreamWriter(fs_log);
sw.AutoFlush = true;

Fin qui non credo di commettere errori. Dato che devo scrivere periodicamente su questo file di log, in modo da tener traccia di ogni operazione compiuta dalla mia applicazione, ogni volta che compio la scrittura uso questa sintassi:
(ricorrente):

using(fs_log)
{
sw.WriteLine("Operazione X effettuata");
sw.Dispose();
}

Tale scrittura avviene più volta nel programma (ma comunque cambiano le modalità, quindi non posso implementare una subroutine) quindi spesso uso questa sintassi.

Ebbene, nel file di log mi viene scritta solo l'ultima operazione effettuta...come se sovrascrivesse ogni volta il file...

Qualcuno mi può aiutare???
PS: A fine programma uso anche il close ed il dipose sullo streamwriter, ma non so quanto possa esser utile...

Grazie a tutti!

EDIT: congiuntivi!

Brainkiller Profilo | Guru

Ma perchè vuoi complicarti la vita così ?
http://www.dotnethell.it/articles/TextReaderTextWriter.aspx

Usa la classe TextWriter leggi il Listato n° 3.
Fammi sapere.
ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/

totti240282 Profilo | Guru

Il problema sta qui

FileMode.Create,devi mettere append per aggiungere al file.
C'è solo un capitano !!!!!!

liveforever81 Profilo | Junior Member

Grazie a tutti...

Ho risolto proprio con TextWriter
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5