共用方式為


TextFieldParser.FieldWidths 屬性

更新:2007 年 11 月

表示正在剖析之文字檔中的每一個資料行寬度。

 ' Usage Dim value As Integer() = TextFieldParserObject.FieldWidths ' Declaration Public Property FieldWidths As Integer()

傳回值

Integer ().

例外狀況

以下條件可能會產生例外狀況:

  • 任何位置 (除了陣列的最後一個項目以外) 中的寬度值會小於或等於零 (ArgumentException)。

備註

唯有在 TextFieldParser.TextFieldType 屬性 = FieldType.FixedWidth 時,這個屬性才有意義。如果陣列中的最後一個項目小於或等於零,則欄位會假設為變數寬度。

SetFieldWidths 方法也可以用於設定欄位寬度。如需詳細資訊,請參閱 TextFieldParser.SetFieldWidths 方法

工作

下表列出包含 FieldWidths 屬性的工作範例。

若要

請參閱

讀取固定寬度的文字檔

HOW TO:在 Visual Basic 中從固定寬度的文字檔讀取

範例

這個範例會讀取 ParserText.txt 檔案並指定寬度,第一個資料行的寬度為 5 個字元、第二個為 10 個字元,而第四個資料行的寬度為可變。

Using MyReader As New _
Microsoft.VisualBasic.FileIO.TextFieldParser("C:\ParserText.txt")
    MyReader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.FixedWidth
    MyReader.FieldWidths = New Integer() {5, 10, 11, -1}
    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

需求

命名空間 (Namespace)︰Microsoft.VisualBasic.FileIO

類別︰TextFieldParser

組件:Visual Basic 執行階段程式庫 (在 Microsoft.VisualBasic.dll 中)

使用權限

不需要使用權限。

請參閱

工作

HOW TO:在 Visual Basic 中從固定寬度的文字檔讀取

HOW TO:在 Visual Basic 中從逗號分隔文字檔讀取

HOW TO:在 Visual Basic 中以多種格式從文字檔讀取

疑難排解例外狀況:Microsoft.VisualBasic.FileIO.TextFieldParser.MalformedLineException

概念

使用 TextFieldParser 物件剖析文字檔

參考

TextFieldParser 物件

TextFieldParser.FieldWidths

FieldType 列舉型別