Ho questo problema, devo trovare da un file .txt un riferimento (M05) e devo cancellare la riga che lo contiene con la sua precedente.
Ho Formulato questo frammento di codice, ma mi sto intrecciando con l'apertura e la chiusura dei vari Stream.
Potete aiutarmi per favore???
//Creo una stringa che rappresenta la riga letta dallo streamReader
string line = string.Empty;
// Creo un file di appoggio per scriverci dei dati temporanei
string fileAppoggio = @"C:\appoggio.txt";
StreamWriter scriviAppoggio = File.CreateText(fileAppoggio);
//Creo uno StreamReader per leggere il file di originale
StreamReader leggiOriginale= new StreamReader(fileOriginale);
//Creo uno StreamWriter per scrivere le righe nel nuovo file
StreamWriter scriviDefinitivo = File.CreateText(fileDefinitivo);
// Cancella la voce di riferimento M05, la riga precedente e scrivi CORPO
while (line != null)
{
// Leggo dal file Originale
line = leggiOriginale.ReadLine();
// Lo scrivo nel file temporaneo Appoggio
scriviAppoggio.WriteLine(line);
// Se trovo il riferimento attivo la procedura
if (line == "M05")
{
//Estraggo in un array le righe che compongono il file appoggio
string[] righeCorpo = File.ReadAllLines(fileAppoggio);
//Identifico quante sono le righe del file appoggio
int NumRigheCorpo = righeCorpo.Length;
// Cancello le ultime due righe del file di appoggio
int righeTemp = NumRigheCorpo - 2;
for (int i = 1; i <= righeTemp; i++)
{
//Creo uno StreamReader per leggere il file di appoggio
StreamReader leggiAppoggio = new StreamReader(fileAppoggio);
line = leggiAppoggio.ReadLine(); //Leggi la riga dal file appoggio
scriviDefinitivo.WriteLine(line); //Scrivila nel file definitivo
}
scriviDefinitivo.WriteLine("CORPO");
leggiAppoggio.Close();
}
}
scriviAppoggio.Close();
leggiOriginale.Close();
scriviDefinitivo.Close();
Vi prego 