一个文件的内容大概是这样的
张三 78 80 99 良好
我定义2个字符串类型的变量(a,e),三个整型变量(b,c,d)想把这些内容读进来,我这样写:
input #1, a, b, c, d, e
可是读取失败了,一行内容全都被读入到a中,请问我该怎么办呢?
张三 78 80 99 良好
我定义2个字符串类型的变量(a,e),三个整型变量(b,c,d)想把这些内容读进来,我这样写:
input #1, a, b, c, d, e
可是读取失败了,一行内容全都被读入到a中,请问我该怎么办呢?
dim s() as string
s=split(a,vbtab)'如果中间是用tab健个开的话
a=s(0)
b=s(1)
c=s(2)
.
.
.
如果中间是用5个空格隔开,那么split对这5个空格的处理就会变成4个空串,很难把握啊
Dim a$, e$, b%, c%, d%f1 = FreeFile
Open "d:\1.txt" For Input As f1
Line Input #f1, s
Close #f1
ss = Split(s, " ")
k = UBound(ss): m = 0
For i = 0 To k
If ss(i) <> "" Then
m = m + 1
If m = 1 Then
a = ss(i)
ElseIf m = 2 Then
b = Val(ss(i))
ElseIf m = 3 Then
c = Val(ss(i))
ElseIf m = 4 Then
d = Val(ss(i))
ElseIf m = 5 Then
e = ss(i)
End If
End If
Next i
Dim a$, e$, b%, c%, d%f1 = FreeFile
Open "d:\1.txt" For Input As f1
Line Input #f1, s
Close #f1
ss = Split(s, " ")
k = UBound(ss): m = 0
For i = 0 To k
If ss(i) <> "" Then
m = m + 1
If m = 1 Then
a = ss(i)
ElseIf m = 2 Then
b = Val(ss(i))
ElseIf m = 3 Then
c = Val(ss(i))
ElseIf m = 4 Then
d = Val(ss(i))
ElseIf m = 5 Then
e = ss(i)
End If
End If
Next i
Dim temp$
Dim n%, m%, i%
Dim User(5)
'¶Á³öËùÓÐ
Open "c:\user.txt" For Input As #1
Input #1, temp$
Close #1
'·Ö½â
For i = 1 To 5
m = InStr(temp, " ")
n = Len(temp)
If m <> 0 Then
User(i) = Left(temp, m)
Else
User(i) = Left(temp, n)
End If
temp$ = Right(temp, n - m)
temp = LTrim(temp)
temp = RTrim(temp)
Next i
'ÏÔʾ
For i = 1 To 5
MsgBox User(i)
Next i
End Sub
Dim temp$
Dim n%, m%, i%
Dim User(5)
'读出所有
Open "c:\user.txt" For Input As #1
Input #1, temp$
Close #1
'分解
For i = 1 To 5
m = InStr(temp, " ")
n = Len(temp)
If m <> 0 Then
User(i) = Left(temp, m)
Else
User(i) = Left(temp, n)
End If
temp$ = Right(temp, n - m)
temp = LTrim(temp)
temp = RTrim(temp)
Next i
'显示
For i = 1 To 5
MsgBox User(i)
Next i
End Sub
Dim temp$
Dim n%, m%, i%
Dim User(5)
Open "c:\user.txt" For Input As #1
Input #1, temp$
Close #1
temp = RTrim(temp)
For i = 1 To 5
m = InStr(temp, " ")
n = Len(temp)
If m = 0 Then m = n
User(i) = Left(temp, m)
temp$ = LTrim(Right(temp, n - m))
Next i
For i = 1 To 5
MsgBox User(i)
Next i
End Sub