TextFieldParser.ReadFields 메서드

정의

현재 줄의 모든 필드를 읽고 문자열 배열로서 반환한 다음 데이터가 포함된 다음 줄로 커서를 이동합니다.Reads all fields on the current line, returns them as an array of strings, and advances the cursor to the next line containing data.

public:
 cli::array <System::String ^> ^ ReadFields();
public string[]? ReadFields ();
public string[] ReadFields ();
member this.ReadFields : unit -> string[]
Public Function ReadFields () As String()

반환

String[]

현재 줄의 필드 값이 들어 있는 문자열 배열입니다.An array of strings that contains field values for the current line.

예외

지정된 형식을 사용하여 필드를 구문 분석할 수 없는 경우A field cannot be parsed by using the specified format.

예제

이 예제에서는 메서드를 사용 하 여 ReadFields 쉼표로 구분 된 파일을 읽습니다 ParserText.txt .This example uses the ReadFields method to read from the comma-delimited file ParserText.txt. 이 예에서는 필드를에 씁니다 Testfile.txt .The example writes the fields to 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

설명

사용자가 여러 형식의 텍스트 파일을 구문 분석할 수 있도록 하기 위해 ReadFields 메서드는, 및 값 ( TextFieldType Delimiters FieldWidths 지정 된 경우)이 호출 될 때마다이를 검사 합니다.In order to allow users to parse text files in multiple formats, the ReadFields method examines the values of TextFieldType, Delimiters, and FieldWidths, if they are specified, each time it is called. 사용자는 적절 하 게 TextFieldTypeFieldWidths 또는 속성을 올바르게 구성 해야 Delimiters 합니다.Users need to correctly configure the TextFieldType and FieldWidths or Delimiters properties, as appropriate. TextFieldType가로 설정 되어 Delimited 있고이 Delimiters 설정 되어 있지 않거나 TextFieldType 가 and로 설정 된 FixedWidth 경우 FieldWidths 예외가 throw 됩니다.If TextFieldType is set to Delimited, and Delimiters is not set, or if TextFieldType is set to FixedWidth and FieldWidths, an exception is thrown.

ReadFields에서 빈 줄을 발견 하면 해당 줄을 건너뛰고 비어 있지 않은 다음 줄이 반환 됩니다.If ReadFields encounters blank lines, they are skipped and the next non-blank line is returned.

ReadFields메서드가 현재 줄을 구문 분석할 수 없는 경우 예외가 발생 하 고 다음 줄로 이동 하지 않습니다.If the ReadFields method cannot parse the current line, it raises an exception and does not move to the next line. 이 통해 애플리케이션을 다시 줄을 구문 분석 하려고 합니다.This enables your application to attempt to parse the line again.

다음 표에서 관련 된 작업의 예제는 ReadFields 메서드.The following table lists examples of tasks involving the ReadFields method.

대상To 참조 항목See
구분 된 파일에서 읽기Read from a delimited file 방법: 쉼표로 구분된 텍스트 파일에서 읽기How to: Read From Comma-Delimited Text Files
고정 너비 파일에서 읽기Read from a fixed-width file 방법: 고정 너비 텍스트 파일에서 읽기How to: Read From Fixed-width Text Files

적용 대상

추가 정보