Procedura: leggere un file di testo
Aggiornamento: novembre 2007
Nell'esempio di codice riportato di seguito viene illustrato come aprire e leggere un file di testo una riga alla volta. A questo scopo verrà utilizzata la classe StreamReader definita nello spazio dei nomi System.IO. Vengono utilizzati un'istanza di questa classe per aprire un file di testo e quindi il metodo StreamReader.ReadLine per recuperare ciascuna riga del file.
Questo codice può essere utilizzato con qualsiasi file di testo denominato textfile.txt oppure con il file generato in Procedura: scrivere un file di testo.
Esempio
// text_read.cpp
// compile with: /clr
#using<system.dll>
using namespace System;
using namespace System::IO;
int main()
{
String^ fileName = "textfile.txt";
try
{
Console::WriteLine("trying to open file {0}...", fileName);
StreamReader^ din = File::OpenText(fileName);
String^ str;
int count = 0;
while ((str = din->ReadLine()) != nullptr)
{
count++;
Console::WriteLine("line {0}: {1}", count, str );
}
}
catch (Exception^ e)
{
if (dynamic_cast<FileNotFoundException^>(e))
Console::WriteLine("file '{0}' not found", fileName);
else
Console::WriteLine("problem reading file '{0}'", fileName);
}
return 0;
}