关于vb读取txt文件的问题
大家好,我需要做的问题是这样的:
我有一组数,存放在txt文件中。数据共1000行,15列。我需要做的是把第2,7,8列、从500到700行的数据读到三个数组里面。每个数组存放相应的一列数。
老板催着要。很急!!!!
求大家多多帮忙。我用的语言是vb。
[解决办法]
dim s as string,ss() as string
dim ss1(200) as string,ss2(200) as string,ss3(200) as string
open "d:\aa.txt" for input as #1
do while not eof(1)
line input #1,s
i=i+1
if i>=500 and i<=700 then
ss=split(s,",") '逗号表示数据用逗号分隔,如果是别的改一下
ss1(i-500)=ss(1)
ss2(i-500)=ss(6)
ss3(i-500)=ss(7)
end if
loop
close #1
msgbox "ok"
[解决办法]
如何读/写 Binary File
'以下是读取Binary file的程式
Dim Buff() as Byte
Open "d:\csys\8504\ctc" For Binary Access Read As #1
ReDim Buff(267)
Do While Not EOF(1)
Get #1, , Buff '每次读268个byte进来
'Call 处理Buff 的Routine
Loop
Close #1
'以下是写入Binary file的程式
Dim Buff() As Byte
Open "c:\tc" For Binary Access Write As #1
ReDim Buff(10)
Buff = StrConv("这是一个11", vbFromUnicode)
Put #1, , Buff
ReDim Buff(1)
Buff(0) = 210
Buff(1) = 70
Put #1, , Buff
Close #1
End Sub
[解决办法]
定长是指每行在磁盘上占用的字节数。
如果每行是相同的,则可以直接计算出哪行在哪个位置,然后就直接从那儿读了。
还有,数据之间用统一的分隔符,这样就可以用 Split() 把它拆分成数组,要第几个,取相应的元素值就行了。
你的数据,用 数据库 或 随机记录文件 都比较方便。