有一文本文件,读入的时候总是读一部分数据,
好象是中间有个文件结束符,
如何才能读入全部的内容

解决方案 »

  1.   

    试试看
    Sub 读取文本文件(strSourceFile As String)
        Dim filenum         As Integer
        Dim fileContents    As String
        Dim fileInfo()      As String
        Dim i               As Integer
        Dim j               As Integer
        
        Dim tmpDemData As String
        filenum = FreeFile
        Open strSourceFile For Binary As #filenum
            fileContents = Space(LOF(filenum))
            Get #filenum, , fileContents
        Close filenum
        fileInfo = Split(fileContents, vbCrLf)    '循环每一行
        For i = 0 To UBound(fileInfo) - 1
            debug.Print fileInfo(i)
        Next    MsgBox "完毕"
    End Sub
      

  2.   

    用get方法读文件时要注意长度啊,它是按给定字节数读数据的.
    Get 语句的语法具有以下几个部分:部分 描述 
    filenumber 必要。任何有效的文件号。 
    recnumber 可选。Variant (Long)。记录号(Random 方式的文件)或字节数(Binary 方式的文件),以表示在此处开始读出数据。 
    varname 必要。一个有效的变量名,将读出的数据放入其中。 
    说明通常用 Put 将 Get 读出的数据写入一个文件。文件中第一个记录或字节位于位置 1,第二个记录或字节位于位置 2,依此类推。若省略 recnumber,则会读出紧随上一个 Get 或 Put 语句之后的下一个记录或字节(或读出最后一个 Seek 函数指出的记录或字节)。所有用于分界的逗号都必须罗列出来,例如:Get #4,,FileBufferType Record   ' 定义用户自定义的数据类型。
       ID As Integer
       Name As String * 20
    End TypeDim MyRecord As Record, Position   ' 声明变量。
    ' 为随机访问打开样本文件。
    Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
    ' 使用 Get 语句来读样本文件。
    Position = 3   ' 定义记录号。
    Get #1, Position, MyRecord   ' 读第三个记录。
    Close #1   ' 关闭文件。
      

  3.   

    如果你读出来后,将文本放在txtBoX内,VB的这个自带控件可是有文件长度限制的。