VB 逐行循环读入文本

来源:百度知道 编辑:UC知道 时间:2024/05/21 10:06:29
我在a.txt文本中有许多行内容,具体也看不清楚了(~.~)
现在开工了,我在窗体里做了一个Command1按钮和一个Text1文本框(不允许
多行输入的)
现在想实现以下功能:
1.点击一下按钮,会逐行读入a.txt文本到Text1中.(注意是每点一次读一行,而且每点一次只显示一行)(全部读入的我也会)
2.如果读到最后一行,将会返回到a.txt文本中的第一行开始继续读.其读入的方法同上(注意同上1点)如此循环,不会结束.
代码务求简单,有效,(不是写的简单)而是简单又看的明白的,我VB 初学不久,什么API的,模块的最好不用.

Dim a() As String '定义可调数组,用于存方各行内容

Private Sub Command1_Click()
Static i '静态变量i ,控制显示.
Text1.Text = a(i) '第i-1行的内容显示到文本框中
If i = UBound(a) Then
i = 0 '到最后一行时,i置0,回首行
Else
i = i + 1 '移至下行
End If
End Sub

Private Sub Form_Load()
Dim fn As Integer
Dim temp As String
Dim alltxt As String 'alltxt存放文件中的所有内容
alltxt = "$" '赋个特别的字符,用于下面reaplce中
fn = FreeFile '取得一个自由文件号
Open "c:\mytxt.txt" For Input As fn '打开文件
Do While Not EOF(fn) '循环读取各行内容
Line Input #fn, temp '一行的内容读到变量temp中
alltxt = alltxt & "|" & temp '将各行内容累加到alltxt中,用"|"分隔
Loop
alltxt = Replace(alltxt, "$|", "") '消除第一个"|"前的内容
a = Split(alltxt, "|") '将alltxt中的内容依"|"拆