我有一个文本文件,其中包含没有拆分器的字符串:
881234567812345000000ABCD
998765432112345000000WXYZ <- 2nd line
我需要将这些字符串拆分成列并将其插入DataTable
:
ID | AccountNo | AreaNo | LeaveZero | Letters
=====================================
88 | 12345678 | 12345 | 000000 | ABCD
99 | 87654321 | 12345 | 000000 | WXYZ
如何在VB.NET中实现?
=============================
更新
这是我的一些代码。我正在使用DevExpress来构建GUI:
Imports DevExpress.XtraBars.Ribbon
Imports System.IO
Imports DevExpress.Spreadsheet
Public Class Form1
Dim dt As New DataTable
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick
Dim fd As New OpenFileDialog
If fd.ShowDialog = DialogResult.OK Then
Me.Text = fd.FileName
import(fd.FileName)
End If
End Sub
Private Sub import(ByRef pathname As String)
Dim txtLine As String = ""
Dim newline As String = ""
Using stream As New StreamReader(pathname)
For Each line As String In File.ReadAllLines(pathname)
txtLine = txtLine & String.Format("{0} {1}", line.Substring(0, 2), line.Substring(2, 20)) & vbNewLine
Next
dt.Columns.Add("recordID")
dt.Columns.Add("accountNo")
dt.Columns.Add("reserved")
dt.Columns.Add("billNo")
newline = stream.ReadLine
While newline IsNot Nothing
Dim dr As DataRow = dt.NewRow
For i As Integer = 0 To 3 Step 1
'dr(i) = newline.Substring(0, 2 + i)
Next
dt.Rows.Add(dr)
End While
End Using
GridControl1.DataSource = dt
MemoEdit1.Text = txtLine
End Sub
End Class