Copiare file in memoria

martedì 24 aprile 2012 - 11.39
Tag Elenco Tags  C#  |  .NET 4.0

82_marco Profilo | Junior Member

Ciao a tutti, ho un file di questo tipo

riga1
riga2
; riga3
riga4
; riga5
zzz
ssssss
sddddd
wewwe

vorrei eseguire questa operazione: copiare in un altro file in memoria le righe che non iniziano con ; e solo fino alla riga che inizia con zzz.
quindi in memoria dovrei un file cosi:

riga1
riga2
riga4

fatto questo dovrei caricare in una variabile di tipo string il valore di riga1, poi ad ogni cigli di programma caricare la successiva e quando carico l' ultima ricaricare la prima e cosi via

ho pensato di usare le linq ma ho un poco di difficolta'

massimo.missaglia Profilo | Newbie

Così ?

using (StreamWriter sw = new StreamWriter(@"C:\File2.txt"))
{
using (StreamReader sr = new StreamReader(@"C:\File1.txt"))
{
String sline;

while ((sline = sr.ReadLine()) != null)
if (!sline.StartsWith(";") && sline.ToLower() != "zzz")
sw.WriteLine(sline);
}
}

Massimo Missaglia
-------------------------------
www.MassimoMissaglia.com

82_marco Profilo | Junior Member

Ciao, come prima impressione sembra sia cosi :-) domani lo provo
Visto che file 2 alla fine di questa operazione deve essere letto molte volte al secondo, e' possibile salvarlo in memoria?

82_marco Profilo | Junior Member

Ciao, ho provato il codice funziona perfettamente.
E' possibile salvare file2 in RAM? perche' deve essere letto infinita volte e non vorrei farlo da disco

massimo.missaglia Profilo | Newbie

Ciao,
prova con il MemoryStream

http://msdn.microsoft.com/en-us/library/system.io.memorystream.aspx

Massimo Missaglia
-------------------------------
www.MassimoMissaglia.com

82_marco Profilo | Junior Member

Ciao,
nell esempio che mi hai proposto viene accettato anche la riga che inizia con zzz, io vorrei escludere anche quella e fermare la scansione alla riga che la precede.
mi e' stato suggerito di usare un foreach, ma non mi e' chiara la sintassi da usare :-(
in oltre vorrei salvare il risultato della scansione in un array anziche' di un file

Mi potete dare un aiuto per favore?
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5