Procedura: leggere testo da un file
Nell'esempio di codice riportato di seguito viene illustrata la procedura per la lettura di testo da un file di testo. Nel secondo esempio l'utente riceve notifica quando viene raggiunta la fine del file. Per ottenere tale funzionalità, è anche possibile utilizzare i metodi ReadAllLines o ReadAllText.
Esempio
Imports System
Imports System.IO
Class Test
Public Shared Sub Main()
Try
' Create an instance of StreamReader to read from a file.
' The using statement also closes the StreamReader.
Using sr As New StreamReader("TestFile.txt")
Dim line As String
' Read and display lines from the file until the end of
' the file is reached.
Do
line = sr.ReadLine()
If Not (line Is Nothing) Then
Console.WriteLine(line)
End If
Loop Until line Is Nothing
End Using
Catch e As Exception
' Let the user know what went wrong.
Console.WriteLine("The file could not be read:")
Console.WriteLine(e.Message)
End Try
End Sub
End Class
using System;
using System.IO;
class Test
{
public static void Main()
{
try
{
// Create an instance of StreamReader to read from a file.
// The using statement also closes the StreamReader.
using (StreamReader sr = new StreamReader("TestFile.txt"))
{
String line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
}
catch (Exception e)
{
// Let the user know what went wrong.
Console.WriteLine("The file could not be read:");
Console.WriteLine(e.Message);
}
}
}
using namespace System;
using namespace System::IO;
ref class Test
{
public:
static void Main()
{
try
{
// Create an instance of StreamReader to read from a file.
// The using statement also closes the StreamReader.
StreamReader^ sr = gcnew StreamReader("TestFile.txt");
String^ line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr->ReadLine()) != nullptr)
{
Console::WriteLine(line);
}
sr->Close();
}
catch (Exception^ e)
{
// Let the user know what went wrong.
Console::WriteLine("The file could not be read:");
Console::WriteLine(e->Message);
}
}
};
int main()
{
Test::Main();
}
Imports System
Imports System.IO
Public Class TextFromFile
Private Const FILE_NAME As String = "MyFile.txt"
Public Shared Sub Main()
If Not File.Exists(FILE_NAME) Then
Console.WriteLine("{0} does not exist.", FILE_NAME)
Return
End If
Using sr As StreamReader = File.OpenText(FILE_NAME)
Dim input As String
Do
input = sr.ReadLine()
If Not (input Is Nothing) Then
Console.WriteLine(input)
End If
Loop Until input Is Nothing
Console.WriteLine ("The end of the stream has been reached.")
End Using
End Sub
End Class
using System;
using System.IO;
public class TextFromFile
{
private const string FILE_NAME = "MyFile.txt";
public static void Main()
{
if (!File.Exists(FILE_NAME))
{
Console.WriteLine("{0} does not exist.", FILE_NAME);
return;
}
using (StreamReader sr = File.OpenText(FILE_NAME))
{
String input;
while ((input = sr.ReadLine()) != null)
{
Console.WriteLine(input);
}
Console.WriteLine ("The end of the stream has been reached.");
}
}
}
using namespace System;
using namespace System::IO;
public ref class TextFromFile
{
private:
static String^ FILE_NAME = "MyFile.txt";
public:
static void Main()
{
if (!File::Exists(FILE_NAME))
{
Console::WriteLine("{0} does not exist.", FILE_NAME);
return;
}
StreamReader^ sr = File::OpenText(FILE_NAME);
String^ input;
while ((input = sr->ReadLine()) != nullptr)
{
Console::WriteLine(input);
}
Console::WriteLine ("The end of the stream has been reached.");
sr->Close();
}
};
int main()
{
TextFromFile::Main();
}
Programmazione efficiente
Questo codice consente di creare un oggetto StreamReader che punta a MyFile.txt tramite una chiamata a File.OpenText. StreamReader.ReadLine restituisce ogni riga come stringa. Quando non ci sono più caratteri da leggere, viene visualizzato un messaggio e il flusso viene chiuso.
Nota |
---|
Gli utenti di Visual Basic possono scegliere di utilizzare i metodi e le proprietà forniti dalla classe FileSystem per l'I/O di file. |
Vedere anche
Attività
Procedura: creare una visualizzazione directory
Procedura: leggere e scrivere su un file di dati appena creato
Procedura: aprire e accodare un file di log
Procedura: scrivere testo su un file
Procedura: leggere caratteri da una stringa
Procedura: scrivere caratteri in una stringa