# Re: 读档 ??

Posted by AndyLin on September 19, 1998 at 09:36:59:

In Reply to: Re: 读档 ?? posted by tang on September 19, 1998 at 09:21:39:

: : : For n = 1 To x
: : : Open "d:\vb_test\" & c(n) For Input As #1
: : : j = 0
: : : Do While Not EOF(1)
: : : Line Input #1, readline
: : : j = j + 1
: : : Loop
: : : Close #1
: : :
: : : ReDim xArray(j)
: : : ReDim b(j)
: : :
: : : Open "d:\vb_test\" & c(n) For Input As #1
: : : Close #1
: : : Next n
: : : For m = 1 To j
: : : Line Input #1, b(m) <--- ** debug here **
: : : Next m

: : : 请问在上述一段程式中利用 For 回圈读档计算各档案的行数
: : : 再将每一行暂存到 b(m) 中
: : : 可是当跑到开第二个档案就会产生 error
: : : WHY ???
: : : Thanks !

: : 若你在程式宣告中没有设定 option base 1 ,则阵列起始是从 0 开始,所以你的程式应该改成
: : : For m = 0 To j-1
: : : Line Input #1, b(m)
: : : Next m
: : 或者在宣告中加入 option base 1

: 多谢指教, 不过我试了一下没作用
: 我原先有设 Option Explicit 耶

: 真奇怪 !

设定 option explicit 是为了让 user 在使用变数之前强迫一定要宣告(方便 debug),而 optiob base 1 设定是让所有之阵列起始是从 1 开始,当然也可以从你想要的数字开始,两者是不一样的

Follow Ups:

- Re: 读档 ?? tang 11:12:56 9/19/98 (0)