Salve a tutti,
ho un problema, ovvero devo scrivere delle informazioni su un file, riga per riga, e poi devo poter prendere le 100 informazioni più recenti.

Presupponendo che non so quante righe ci possono essere su un file e che potrebbero essere anche tantissime (quindi no l'idea di leggersele tutte su un array e poi leggersi gli indici all'incotrario) allora mi chiedo se c'è un modo per ovviare il problema:

- O scrivendo sul file "all'incontrario", ovvero invece di appendere a fine file ogni nuova stringa di scriverla in testa;

- O leggendo dalla fine del file verso l'inizio;


Io attualmente per scrivere utilizzo il seguente codice:

codice:
   path = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);
                   fs = new FileStream(path + @nomefile, FileMode.Append, FileAccess.Write);
                   streamwriter = new StreamWriter(fs);
                   streamwriter.WriteLine(linea);
                   streamwriter.Close();

Non c'è qualche modo rapido ed indolore per dirgli semplicemente di scrivere a inizio file e non a fine file?

Per leggere utilizzo analogalmente uno streamreader ed il corrispettivo metodo readline.

Vi ringrazio in anticipo,
Neptune.