关于Vb的小问题,代码几乎一样的

[复制链接]
查看11 | 回复2 | 2010-10-31 20:46:10 | 显示全部楼层 |阅读模式
If Dir("c:\ftzj\内容1.txt")"" Then '内容
Dim st1, TL1 As String
Open "c:\ftzj\内容1.txt" For Input As #1'读取文件。
Do While Not EOF(1)
Line Input #1, TL1
st1 = st1 & TL1 & Chr(13)
Loop
Close #1
T1.Text = st1
End If
If Dir("c:\ftzj\内容2.txt")"" Then '内容
Dim st2, TL2 As String
Open "c:\ftzj\内容2.txt" For Input As #1'读取文件。
Do While Not EOF(1)
Line Input #1, TL2
st2 = st2 & TL2 & Chr(13)
Loop
Close #1
T2.Text = st2
End If
If Dir("c:\ftzj\内容3.txt")"" Then
Dim st3, TL3 As String
Open "c:\ftzj\内容3.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, TL3
st3 = st3 & TL3 & Chr(13)
Loop
Close #1
T3.Text = st3
End If
(就这样一直加1)




这些代码都差不多,有没有什么方法。可以使代码更少些。比较那些1,2,3用一个变量来代替。这样行的吗?有谁知道的。

回复

使用道具 举报

千问 | 2010-10-31 20:46:10 | 显示全部楼层
原理就是把数字用循环圈起来,转成字符后输出。 可能还存在问题,就是TL1字符变量不能用同样的方法转换输出,您可以试试数组:过程首输入:Public TL('上面的n的上限,一个数字),st(同上) as string后面:TL1,TL2...改成TL(1),TL(2)...也就是TL(time),ST也一样~包括Text控件,把它们名称设置成一样的,就会生成控件数组。Dim time as singleFor time = 1 to n 'n是内容上限If Dir("c:\ftzj\内容" & val(time) & ".txt")"" Then '内容Open
回复

使用道具 举报

千问 | 2010-10-31 20:46:10 | 显示全部楼层
public function test(byval strDir as string ,byval iNum as integer) as stringIf Dir(strdir)"" ThenDim st3, TL3 As StringOpen strdir For Input As # & inumDo While
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行