Open App.Path & "\test.txt" For Input As #a1 ' 打开文件
Do While Not EOF(a1) ' 循环至文件尾
Line Input #a1, Tmp_Str ' 读入一行数据并将其赋予某变量
msgbox split(Tmp_Str,"=")(1) '拆分一行数据
Loop
Close #a1 ' 关闭文件
Do While Not EOF(1)
Line Input #1,chg
If Left(chg, 5) = "*****" Then
a = Mid(chg, 6)
ElseIf Left(chg, 7) = "*******" Then
b = Mid(chg, 8)
......
End If
Loop
都太麻烦了吧
Dim Fso As New FileSystemObject, ts As TextStream
Set ts = Fso.OpenTextFile("C:\Documents and Settings\Administrator\桌面\INVOUT.TXT", 1)
Text.Text = Trim(ts.ReadLine)
这样就可以读取每一行,但是看你的问题,是想把数据写到数据库中,那你这样做
最好是样做,每次循环行数的时候,都执行INSERT语句,速度不会很慢的,我有一个程序是写发票用的
几千行数据,好几个字段,三四秒就可以了。
strs,str1,str2为四个字符变量
Dim vntSplit As Variant
FOR INTI=1 TO 行数
strs = ts.ReadLine ‘读取每一行
vntSplit = Split(strs, "=") 用它来分割字符,分分割符为=
str1 = vntSplit(1) 取=前面的
str2 = vntSplit(2) 取=后面的
rs.open "insert " 这里用语句将变量插入到数据库中
NEXT
Private Sub Command1_Click()
Dim sInput As String
Dim sArray
Open "D:\11.txt" For Input As #1
Line Input #1, sInput
sSplit (sInput)
Line Input #1, sInput
sSplit (sInput)
Close #1
Label1.Caption = sName
Label2.Caption = sSex
End Sub
Private Sub sSplit(sInput As String)
Dim sArray
sArray = Split(sInput, "=")
If sArray(0) = "姓名" Then sName = sArray(1)
If sArray(0) = "性别" Then sSex = sArray(1)
End Sub
然后:
dim fso as new FileSystemObject,txtfil as textStream
set txtfil=fso.OpenTextFile("d:\a.txt")
dim strLine as string
strLine=txtfil.ReadLine()
txtfil.close
Open App.Path & "\test.txt" For Input As #a1 ' 打开文件
Do While Not EOF(a1) ' 循环至文件尾
Line Input #a1, Tmp_Str ' 读入一行数据并将其赋予某变量
msgbox Tmp_Str
Loop
Close #a1 ' 关闭文件