如标题啊,我想读取第22250行数据该怎么写,因为文件较大,用open input写的会假死,而且写的不知道为什么总出现错误9下标越界,请大神帮忙写一下,数据文件如下,谢谢!希望提供两种编码:
1.直接划分行和列,读取某行某列的数据
2.利用查找某个数组,如45001,然后取本行,接着再取下面三行。

解决方案 »

  1.   

    如果每行的字节数一样,可以使用下列代码以随机方式打开文件,文件中含有用户自定义数据类型 Record 的记录。Type Record   ' 定义用户自定义数据类型。
       ID As Integer
       Name As String * 20
    End TypeDim MyRecord As Record   ' 声明变量。
    Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
    ' 若要以其他方式打开文件,必需先关闭此文件。
    Close #1
      

  2.   

    使用数据库,或者将文本文件直接作为数据库的一个表,用微软textdrive直接读写。问题处理起来简单一些。当然卡一下是正常的,如果5万行,一般都要接近1~2秒钟的读取时间。
    我一般处理的是两万行左右的文本,但还有一个不规范的表头,需要先打开去掉表头保存成标准格式的csv文件,再用textdriver读写,每个文件大约2秒钟
    如果这个速度不能接受,就只能动用数据库导入工具了,比如sql server的bcp功能,导入5万行数据也就100ms左右的时间
      

  3.   

    不知道文本文件是不是规范的格式,如果每行不一定有多少个空格,就只能open input了。5万行,文本文件超过10M了吗?
      

  4.   

    谢谢大家,我自己编写出来了~用的是systemobject和streamline