有一个文本txt, 内容如下:[Chipset]
[VGA]
[Audio]
[LAN]
[Wireless]
[Camera]
然后我手动输入字符串,在这个文本里面查找,如果存在,就add到listbox,最主要的是顺序一定要跟我这个文本里面的顺序一样.
如果没有[VGA],那么[Audio]就排第二.没有[Wireless], [Camera]就排第四.不知道这种排序怎么实现?

解决方案 »

  1.   

    Dim strSrc() As String, strDst() As String, i As LongPrivate Sub Form_Load()
        i = -1
        Open "c:\文本txt.txt" For Input As #1
        Do Until EOF(1)
            i = i + 1
            ReDim Preserve strSrc(i)
            Line Input #1, strSrc(i)
        Loop
        Close #1
        ReDim strDst(i)
    End SubPrivate Sub Command1_Click()
    Dim n As Long
        For i = 0 To UBound(strSrc)
            If Trim(strSrc(i)) = Trim(Text1) Then
                strDst(i) = strSrc(i)
                Exit For
            End If
        Next i
        
        List1.Clear
        For i = 0 To UBound(strDst)
            If strDst(i) > "" Then List1.AddItem strDst(i)
        Next i
    End Sub
      

  2.   

    'Text中的输入不要"["和"]",括号已除去
    Dim arr() As String
    Private Sub Form_Load()
    Dim i As Integer
    Dim b As String
    Text1.Text = ""
    Open "C:\1.txt" For Input As #1 'C:\1.txt是文本txt的路径
    Do Until EOF(1)
    Line Input #1, b
    ReDim Preserve arr(i)
    b = Trim(b)
    b = Right(b, Len(b) - 1)
    b = Left(b, Len(b) - 1)
    arr(i) = b
    i = i + 1
    List1.AddItem " "
    Loop
    Close #1
    End Sub
    Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = vbKeyReturn Then
    For i = 0 To UBound(arr)
    If Trim(arr(i)) = Trim(Text1.Text) Then
    List1.List(i) = arr(i)
    List1.ListIndex = i
    MsgBox "第" & i + 1 & "行!"
    Exit For
    End If
    Next
    End If
    End Sub