TextFieldParser.ReadFields (Método)

Actualización: noviembre 2007

Lee todos los campos de la línea actual, los devuelve como una matriz de cadenas y hace avanzar el cursor a la siguiente línea que contiene datos.

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

Valor devuelto

String ().

Excepciones

La condición siguiente puede provocar que se produzca una excepción:

Comentarios

Para que los usuarios puedan analizar archivos de texto en varios formatos, el método ReadFields examina los valores de TextFieldType, Delimiters y FieldWidths, si están especificados, cada vez que se llama a él. Los usuarios deben configurar correctamente TextFieldType y FieldWidths o las propiedades Delimiters, según corresponda. Si TextFieldType está establecido en Delimited, y Delimiters no está establecido, o bien si TextFieldType está establecido en FixedWidth y FieldWidths no está establecido, se produce una excepción.

Si ReadFields encuentra líneas en blanco, éstas se omiten y se devuelve la siguiente línea que no está en blanco.

Nota:

Si el método ReadFields no puede analizar la línea actual, produce una excepción y no se mueve a la línea siguiente. Esto permite que la aplicación intente analizar de nuevo la línea.

Tareas

La tabla siguiente muestra una lista de ejemplos de tareas en las que está implicado el método ReadFields.

Para

Vea

Leer de un archivo delimitado

Cómo: Leer archivos de texto delimitado por comas en Visual Basic

Leer de un archivo de ancho fijo

Cómo: Leer archivos de texto de ancho fijo en Visual Basic

Ejemplo

Este ejemplo utiliza el método ReadFields para leer del archivo ParserText.txt y escribir los campos en 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

Requisitos

Espacio de nombres:Microsoft.VisualBasic.FileIO

Clase:TextFieldParser

Ensamblado: biblioteca en tiempo de ejecución de Visual Basic (en Microsoft.VisualBasic.dll)

Permisos

Se requieren los siguientes permisos:

Permiso

Descripción

FileIOPermission

Enumeración asociada: Unrestricted.

SecurityPermission

Enumeración asociada: ControlEvidence.

Para obtener más información, vea Seguridad de acceso a código y Solicitar permisos.

Vea también

Tareas

Cómo: Leer archivos de texto delimitado por comas en Visual Basic

Cómo: Leer archivos de texto de ancho fijo en Visual Basic

Cómo: Leer archivos de texto con varios formatos en Visual Basic

Conceptos

Analizar archivos de texto con el objeto TextFieldParser

Referencia

TextFieldParser (Objeto)

TextFieldParser.ReadFields

TextFieldParser.TextFieldType (Propiedad)

TextFieldParser.FieldWidths (Propiedad)

TextFieldParser.Delimiters (Propiedad)

TextFieldParser.ReadLine (Método)