VB讀取文本中的內容,文本為多行數據,如何將每行定義為數組值,
我用Open "...\ceshi\data.txt" For Input As #1
  Do While Not EOF(1)
          Line Input #1, readtext
readtext的值是所有文本中的內容.
文本內容如:
B2C00BAFA1NZ1B8716NA0256RFGAA 
B2C00BAFA1NZ1B8716NA0243RFGAA 
B2C00BAFA1NZ1B8716NA0243RFGAA 
B2C00BAFA1NZ1B8716NA0241RFGAA 
B2C00BAFA1NZ1B8716NA0056RFGAA 
B2C00BAFA1NZ1B8716NA0071RFGAA 
B2C00BAFA1NZ1B8716NA0252RFGAA
B2C00BAFA1NZ1B8716NA0242RFGAA麻煩各位大俠給指條明路,謝謝!

解决方案 »

  1.   

    用line input能一次都读出来,说明这个文件的文本不是用VB可识别的换行符来换行的,那就用mid检查一下每两行之间到底是以什么来换行的,然后用split来分离到数组中就行了。
      

  2.   

    用mid如何來檢查兩行之間用什么來換行的,謝謝!
      

  3.   

    用mid如何來檢查兩行之間用什么來換行的,謝謝!
      

  4.   

    for i=1 to len(readtext)
     msgbox  chr(mid(readtext,i,1)) & chr(9) & mid(readtext,i,1) 
    next 
      

  5.   

    我的代码是1个字节一个字节的分析 里面的 ASCII值 
      

  6.   

    前面写错了  
    应该是 msgbox  acs(mid(readtext,i,1)) & chr(9) & mid(readtext,i,1) 
      

  7.   

    應該是ASC(),謝謝!
    執行出來結果了,執行結果沒有第一行和第二行之間的字符,
    即執行完第一行得出最末的A的ASCII,就執行第二行的B的ASCII值.
    (我的txt的內容,是從excel復制了一列的值)
      

  8.   

    應該是ASC(),謝謝!
    執行出來結果了,執行結果沒有第一行和第二行之間的字符,
    即執行完第一行得出最末的A的ASCII,就執行第二行的B的ASCII值.
    (我的txt的內容,是從excel復制了一列的值)
      

  9.   

    正好上午闲没事  写了个抽奖程序   其中就有个把文本里的人名字读到数组里代码 
    发给你看看 
    Private Sub Command1_Click()
    '定义一个变量 先吧所有数据都到里面
    Dim txtTemp
    Dim Textline As String
    CommonDialog1.CancelError = True
    On Error GoTo ErrHandler
    ' 设置标志
    CommonDialog1.Flags = cdlOFNHideReadOnly
    ' 设置过滤器
    CommonDialog1.Filter = "TEXT Files (*.txt)|*.txt"
    ' 指定缺省的过滤器
    CommonDialog1.FilterIndex = 2
    ' 显示“打开”对话框
    CommonDialog1.ShowOpen
    ' 显示选定文件的名字
    ' CommonDialog1.FileName
    txtTemp = ""
        Open CommonDialog1.FileName For Input As #1   ' 打开配置文件。
            Do While Not EOF(1)
                Line Input #1, Textline
                If Trim(Textline & " ") <> "" Then
                    txtTemp = txtTemp & "|" & Textline
                End If        Loop
        Close #1
    txtTemp = Mid(txtTemp, 2)
    ST = Split(txtTemp, "|")
    iCount = UBound(ST)
    LX = ""
    ErrHandler:
    End Sub
      

  10.   

    上面 ST 是个数组 用的是全局变量  Public ST