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.
L'oggetto TextFieldParser
consente di analizzare in modo semplice ed efficiente i file di testo strutturati, ad esempio i log. La TextFieldType
proprietà definisce se si tratta di un file delimitato o di uno con campi a larghezza fissa di testo.
Per analizzare un file di testo delimitato da virgole
Creare un nuovo
TextFieldParser
. Il codice seguente crea l'oggettoTextFieldParser
denominatoMyReader
e apre il filetest.txt
.Using MyReader As New Microsoft.VisualBasic. FileIO.TextFieldParser( "C:\TestFolder\test.txt")
Definire il
TextField
tipo e il delimitatore. Il codice seguente definisce laTextFieldType
proprietà comeDelimited
e il delimitatore come ",".MyReader.TextFieldType = FileIO.FieldType.Delimited MyReader.SetDelimiters(",")
Scorrere i campi nel file. Se le righe sono danneggiate, segnalare un errore e continuare l'analisi. Il codice seguente scorre il file, visualizzando ogni campo a sua volta e segnalando tutti i campi formattati in modo non corretto.
Dim currentRow As String() While Not MyReader.EndOfData Try currentRow = MyReader.ReadFields() Dim currentField As String For Each currentField In currentRow MsgBox(currentField) Next Catch ex As Microsoft.VisualBasic. FileIO.MalformedLineException MsgBox("Line " & ex.Message & "is not valid and will be skipped.") End Try
Chiudere i blocchi
While
eUsing
conEnd While
eEnd Using
rispettivamente.End While End Using
Esempio
Questo esempio legge dal file test.txt
.
Using MyReader As New Microsoft.VisualBasic.
FileIO.TextFieldParser(
"C:\TestFolder\test.txt")
MyReader.TextFieldType = FileIO.FieldType.Delimited
MyReader.SetDelimiters(",")
Dim currentRow As String()
While Not MyReader.EndOfData
Try
currentRow = MyReader.ReadFields()
Dim currentField As String
For Each currentField In currentRow
MsgBox(currentField)
Next
Catch ex As Microsoft.VisualBasic.
FileIO.MalformedLineException
MsgBox("Line " & ex.Message &
"is not valid and will be skipped.")
End Try
End While
End Using
Programmazione efficiente
Le condizioni seguenti possono causare un'eccezione:
Non è possibile analizzare una riga usando il formato specificato (MalformedLineException). Il messaggio di eccezione specifica la riga che causa l'eccezione, mentre alla ErrorLine proprietà viene assegnato il testo contenuto nella riga.
Il file specificato non esiste (FileNotFoundException).
Una situazione di attendibilità parziale in cui l'utente non dispone di autorizzazioni sufficienti per accedere al file. (SecurityException)
Il percorso è troppo lungo (PathTooLongException).
L'utente non dispone di autorizzazioni sufficienti per accedere al file (UnauthorizedAccessException).
Vedere anche
- Microsoft.VisualBasic.FileIO.TextFieldParser
- Procedura: Leggere da file di testo a larghezza fissa
- Procedura: Leggere da file di testo con più formati
- Analisi di file di testo con l'oggetto TextFieldParser
- Procedura dettagliata: Modifica di file e directory in Visual Basic
- Risoluzione dei problemi: lettura e scrittura in file di testo