注册 登录
编程论坛 VB6论坛

请高手帮助:text如何调用txt.中指定的一行内容?

chuci 发布于 2012-06-29 21:50, 1222 次点击
一个text1.text。
一个按钮
一本txt.
文本ABC.txt中内容大致如下:

1001口口口口口口
5789口口口口口口
3456口口口口口口
7854口口口口口口
。。。。。。。。
假如满足某个条件,调出3456一行,如何调出?不是按第三行调,而是按编号3465调。
大概意思:
If n=3456 then
    .........

    text1.text=text1.text +"3456口口口口口口"+chr(13)+chr(10)
End if
上述不止调出3465一行,满足某个条件,还可调出其它行,陆续写在次行,如:
3456口口口口口口
5789口口口口口口
1001口口口口口口
6547口口口口口口
。。。。。。。。




8 回复
#2
bczgvip2012-06-29 22:02
这个“口口”是神马东西?
#3
chuci2012-06-30 07:39

1001少林三十六房
5789少林搭棚大师
3456忍者决战少林和尚
7854老实和尚不是少林和尚
。。。。。。。。


是按文本中的编号调出,并写在text1中。
满足条件A,则调出5789少林搭棚大师---写在第一行
满足条件B,则调出1001少林三十六房---写在第二行
满足条件C,则调出7854老实和尚不是少林和尚----写在第三行
。。。。。。。。。。。。。。。。。。。。。

请高人帮忙,谢谢!

[ 本帖最后由 chuci 于 2012-6-30 07:50 编辑 ]
#4
qq10630529642012-07-01 13:05
同样不解.
#5
yuma2012-07-01 14:24
vb没有指针,真的很难办到啊。


楼主尝试一下 seek() 函数吧。

[ 本帖最后由 yuma 于 2012-7-1 14:52 编辑 ]
#6
chuci2012-07-01 18:04
回复 5楼 yuma
seek我也搞过(见图),就是搞不好,不满意。
只有本站会员才能查看附件,请 登录
#7
yuma2012-07-01 18:23
要不你研究一下 正则表达 吧。
#8
风吹过b2012-07-02 08:13
文件大不在?
如果文件不大,那么一次性读入内存,然后按换行符分解成一行一行的数组,
然后遍类整个数组,找到符合条件的那一行。

如果文件很大,那么把索引号读入内存,放一个数组,然后遍类整个数组,查找符合条件的那一行
然后到文件中,一行一行的读,跳过前面的行,然后读指定的行。
或者你读索引号时,随便把起始位置和总长度也保存下来,读文件时就使用 二进制方式,读多个字符,然后显示出来。
#9
老顽童9892012-07-29 17:06
Dim v As String * 10
————————————————————————————————————
Private Sub Form_Load()
Open "ttt.txt" For Random As #1 Len = 18
  For i = 1 To 4
  Get #1, i, v
     If "5789" = Left(v, 4) Then Text1.Text = Text1.Text + v + vbCrLf
  Print v
  Next i: Close
End Sub
’建立一个文本框 text1  在引号内输入你要的那一行的数字
1