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 属性的任务的示例。
要执行的操作 |
请参见 |
---|---|
从固定宽度的文本文件中读取 |
示例
此示例读取文件 ParserText.txt,同时指定宽度;第一列为 5 个字符宽,第二列为 10,第三列为 11,第四列的宽度可变
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
要求
命名空间:Microsoft.VisualBasic.FileIO
**程序集:**Visual Basic 运行库(位于 Microsoft.VisualBasic.dll 中)
权限
不需要任何权限。
请参见
任务
如何:在 Visual Basic 中读取固定宽度的文本文件
如何:在 Visual Basic 中读取逗号分隔的文本文件
如何:在 Visual Basic 中读取具有多种格式的文本文件
关于异常的疑难解答:Microsoft.VisualBasic.FileIO.TextFieldParser.MalformedLineException