Partager via


TextFieldParser.ReadFields, méthode

Mise à jour : novembre 2007

Lit tous les champs de la ligne en cours, les retourne sous la forme d'un tableau de chaînes et déplace le curseur sur la ligne suivante qui contient des données.

' Usage
Dim value As String() = TextFieldParserObject.ReadFields()
' Declaration
Public Function ReadFields() As String()

Valeur de retour

String ().

Exceptions

La condition ci-dessous peut lever une exception :

Notes

Pour que les utilisateurs puissent analyser des fichiers texte dans plusieurs formats, la méthode ReadFields examine les valeurs de TextFieldType, Delimiters et FieldWidths, si elles sont spécifiées, à chaque appel. Les utilisateurs doivent configurer correctement les propriétés TextFieldType et FieldWidths ou Delimiters, de la manière appropriée. Si TextFieldType a la valeur Delimited et Delimiters n'est pas défini, ou si TextFieldType a la valeur FixedWidth et FieldWidths n'est pas défini, une exception est levée.

Si ReadFields rencontre des lignes vides, elles sont ignorées et la prochaine ligne non vide est retournée.

Remarque :

Si la méthode ReadFields ne peut pas analyser la ligne en cours, elle lève une exception et ne passe pas à la ligne suivante. Cela permet à votre application d'essayer d'analyser de nouveau la ligne.

Tâches

Le tableau suivant répertorie des exemples de tâches impliquant la méthode ReadFields.

Pour

Consultez

Lire un fichier délimité

Comment : lire des fichiers texte délimités par des virgules dans Visual Basic

Lire un fichier à largeur fixe

Comment : lire des fichiers texte de largeur fixe dans Visual Basic

Exemple

Cet exemple utilise la méthode ReadFields pour lire le fichier ParserText.txt et écrire les champs dans Testfile.txt.

Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser("C:\ParserText.txt")
    MyReader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited
    MyReader.Delimiters = New String() {","}
    Dim currentRow As String()
    While Not MyReader.EndOfData
        Try
            currentRow = MyReader.ReadFields()
            For Each currentField As String In currentRow
                My.Computer.FileSystem.WriteAllText _
                ("C://testfile.txt", currentField, True)
            Next
        Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException
            MsgBox("Line " & ex.Message & " is invalid.  Skipping")
        End Try
    End While
End Using

Configuration requise

Espace de noms :Microsoft.VisualBasic.FileIO

Classe :TextFieldParser

Assembly : bibliothèque Visual Basic Runtime (dans Microsoft.VisualBasic.dll)

Autorisations

Les autorisations suivantes sont requises :

Autorisation

Description

FileIOPermission

Énumération associée : Unrestricted.

SecurityPermission

Énumération associée : ControlEvidence.

Pour plus d'informations, consultez Sécurité d'accès du code et Demande d'autorisations.

Voir aussi

Tâches

Comment : lire des fichiers texte délimités par des virgules dans Visual Basic

Comment : lire des fichiers texte de largeur fixe dans Visual Basic

Comment : lire des fichiers texte avec plusieurs formats dans Visual Basic

Concepts

Analyse des fichiers texte avec l'objet TextFieldParser

Référence

TextFieldParser, objet

TextFieldParser.ReadFields

TextFieldParser.TextFieldType, propriété

TextFieldParser.FieldWidths, propriété

TextFieldParser.Delimiters, propriété

TextFieldParser.ReadLine, méthode