Problemi con StreamReader

venerdì 23 dicembre 2005 - 18.09

gianp Profilo | Junior Member

Innanzitutto Buone Feste a tutti.
Io mi creo uno StreamReader a partire da un file che già ho, lo scorro riga per riga e scrivo la riga in un nuovo file dopo averla manipolata.
Il problema è che la cosa funziona fino ad un certo punto: cioè il file non viene riscritto interamente; a me sembra che il file di origine nn viene caricato completamente (perchè ho provato semplicemente a duplicarlo e il problema persisteva).
Esiste un dimensione massima per i file a partire dei quali creo uno StreamReader ? Oppure il problema è un altro?
Qualcuno mi può aiutare???
Di seguito vi scrivo il codice da me usato.

public void GetNewCollection() {
string AbsoluteFullPath= @"posizione del file Origine sul disco";
string str=string.Empty;
FileInfo f=new FileInfo(@"posizione del file destinazione sul disco");
using (StreamReader br=new System.IO.StreamReader(AbsoluteFullPath)) {
StreamWriter sw=f.CreateText();
do {
str=br.ReadLine();
if (str!=null) {
// faccio delle operazioni su sw
}
}
while (str!=null);
}
}

Saluti a tutti Gianpiero.

Cteniza Profilo | Guru

Prova in questo modo:
public void GetNewCollection() {
string AbsoluteFullPath= @"posizione del file Origine sul disco";
string str=string.Empty;
FileInfo f=new FileInfo(@"posizione del file destinazione sul disco");
using (StreamReader br=new System.IO.StreamReader(AbsoluteFullPath)) {
StreamWriter sw=f.CreateText();
while (br.Peek() != -1)
{
str=br.ReadLine();
if (str!=null) {
// faccio delle operazioni su sw
}
}
br.Close();
sw.Close();

gianp Profilo | Junior Member

Problema risolto!
grazie per l'aiuto.
Il problema non era dovuto a come avevo impostato il ciclo ma al fatto cho non mettevo le istruzioni di chiusura dei due flussi:
br.Close();
sw.Close();
alla fine del ciclo.
Ancora grazie a di nuovo Auguri !!!


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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5