Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il ReadAllText metodo dell'oggetto My.Computer.FileSystem consente di leggere da un file di testo. La codifica del file può essere specificata se il contenuto del file usa una codifica come ASCII o UTF-8.
Se si legge da un file con caratteri estesi, sarà necessario specificare la codifica del file.
Annotazioni
Per leggere un file una singola riga di testo alla volta, utilizzare il OpenTextFileReader metodo dell'oggetto My.Computer.FileSystem . Il metodo OpenTextFileReader restituisce un oggetto StreamReader. È possibile utilizzare il ReadLine metodo dell'oggetto StreamReader per leggere un file una riga alla volta. È possibile verificare la fine del file usando il EndOfStream metodo dell'oggetto StreamReader .
Per leggere da un file di testo
Utilizzare il ReadAllText metodo dell'oggetto My.Computer.FileSystem per leggere il contenuto di un file di testo in una stringa, specificando il percorso. L'esempio seguente legge il contenuto di test.txt in una stringa e quindi lo visualizza in una finestra di messaggio.
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt")
MsgBox(fileReader)
Per leggere da un file di testo codificato
Utilizzare il ReadAllText metodo dell'oggetto My.Computer.FileSystem per leggere il contenuto di un file di testo in una stringa, specificando il percorso e il tipo di codifica dei file. L'esempio seguente legge il contenuto del file UTF32 test.txt in una stringa e quindi lo visualizza in una finestra di messaggio.
Dim fileReader As String
fileReader = My.Computer.FileSystem.ReadAllText("test.txt",
System.Text.Encoding.UTF32)
MsgBox(fileReader)
Per leggere da un file di testo in un controllo RichTextBox
Per caricare il contenuto di un file di testo direttamente in un controllo RichTextBox, leggere il contenuto del file in una stringa e assegnarlo alla Text proprietà di RichTextBox. Nell'esempio seguente viene illustrato come leggere un file di testo e caricarlo in un controllo RichTextBox.
' Load text file into a RichTextBox control
' Note: This assumes RichTextBox1 is a control on your form
Dim fileText As String
fileText = My.Computer.FileSystem.ReadAllText("test.txt")
' RichTextBox1.Text = fileText
Per una migliore gestione degli errori e gestione del percorso dei file, è possibile usare l'approccio seguente che costruisce un percorso di file appropriato e gestisce le potenziali eccezioni. Questo approccio evita percorsi del disco codificati rigidamente che possono causare problemi su sistemi diversi.
' Load text file into a RichTextBox control using a specific path
Try
Dim filePath As String = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "test.txt")
Dim fileText As String = My.Computer.FileSystem.ReadAllText(filePath)
' RichTextBox1.Text = fileText
Catch ex As System.IO.FileNotFoundException
MsgBox("File not found: " & ex.Message)
Catch ex As Exception
MsgBox("Error reading file: " & ex.Message)
End Try
Annotazioni
Quando si specificano percorsi di file, evitare di usare percorsi assoluti hardcoded come "C:\temp\file.txt" perché possono causare problemi nei sistemi in cui la lettera di unità o la struttura di directory è diversa. Usare invece percorsi relativi o costruire percorsi usando Combine per assicurarsi che il codice funzioni in ambienti diversi.
Programmazione affidabile
Le condizioni seguenti possono causare un'eccezione:
Il percorso non è valido per uno dei motivi seguenti: si tratta di una stringa di lunghezza zero, contiene solo spazi vuoti, contiene caratteri non validi o è un percorso del dispositivo (ArgumentException).
Il percorso non è valido perché è
Nothing(ArgumentNullException).Il file non esiste (FileNotFoundException).
Il file è in uso da un altro processo o si verifica un errore di I/O (IOException).
Il percorso supera la lunghezza massima definita dal sistema (PathTooLongException).
Un nome di file o directory nel percorso contiene due punti (:) o è in un formato non valido (NotSupportedException).
Memoria insufficiente per scrivere la stringa nel buffer (OutOfMemoryException).
L'utente non dispone delle autorizzazioni necessarie per visualizzare il percorso (SecurityException).
Non prendere decisioni sul contenuto del file in base al nome del file. Ad esempio, il file Form1.vb potrebbe non essere un file di origine di Visual Basic.
Verificare tutti gli input prima di usare i dati nell'applicazione. Il contenuto del file potrebbe non essere quello previsto e i metodi da leggere dal file potrebbero non riuscire.
Vedere anche
- FileSystem
- ReadAllText
- Lettura dai file
- Procedura: Leggere da Comma-Delimited file di testo
- Procedura: Leggere da file di testo a larghezza fissa
- Procedura: Leggere da file di testo con più formati
- Risoluzione dei problemi: lettura e scrittura in file di testo
- Procedura dettagliata: Modifica di file e directory in Visual Basic
- Codifiche di file