index.txt文件 aa bb cc dd一行一行地读取文本文件的数据并进行treeview的显示Option ExplicitPrivate Sub Form_Load()Dim MyString, MyNumber Open App.Path & "\" & "index.txt" For Input As #1 ' 打开输入文件。 Do While Not EOF(1) ' 循环至文件尾。 Input #1, MyString ' 将数据读入变量。 AddNodes (MyString) Loop Close #1 ' 关闭文件。 End Sub Public Sub AddNodes(str As String) Dim strkey As String Dim mNodes As MSComctlLib.Nodes Dim mNode1 As MSComctlLib.NodeDim I As LongOn Error Resume NextSet mNodes = TreeView1.Nodes'mNodes.ClearSet mNode1 = mNodes.Add(, , , str)End Sub
给你一个快一点的办法: Dim tText As String Dim tStrings() As String Dim tStrings_Length As StringDim tIndex As LongtText=TextGetByFile(文件名) tStrings()=Split(tText,vbCrLf)For tIndex=0 To tStrings_Length <对tStrings(tIndex)随便处置吧!> NextFunction TextGetByFile(ByVal pFileName As String) As String '从文件获得多行文本。 Dim tOutText As String Dim tFileNumber As Integer Dim tBytes() As Byte tFileNumber = FreeFile Open pFileName For Binary As #tFileNumber If CBool(LOF(tFileNumber)) Then ReDim tBytes(LOF(tFileNumber) - 1) Get tFileNumber, 1, tBytes() tOutText = StrConv(tBytes, vbUnicode) Else MsgBox "警告:文件" & pFileName & "是空的!", vbOKOnly, "文件无内容" End If Close #tFileNumber TextGetByFile = tOutText End Function
aa
bb
cc
dd一行一行地读取文本文件的数据并进行treeview的显示Option ExplicitPrivate Sub Form_Load()Dim MyString, MyNumber
Open App.Path & "\" & "index.txt" For Input As #1 ' 打开输入文件。
Do While Not EOF(1) ' 循环至文件尾。
Input #1, MyString ' 将数据读入变量。
AddNodes (MyString)
Loop
Close #1 ' 关闭文件。
End Sub
Public Sub AddNodes(str As String)
Dim strkey As String
Dim mNodes As MSComctlLib.Nodes
Dim mNode1 As MSComctlLib.NodeDim I As LongOn Error Resume NextSet mNodes = TreeView1.Nodes'mNodes.ClearSet mNode1 = mNodes.Add(, , , str)End Sub
Dim tText As String
Dim tStrings() As String
Dim tStrings_Length As StringDim tIndex As LongtText=TextGetByFile(文件名)
tStrings()=Split(tText,vbCrLf)For tIndex=0 To tStrings_Length
<对tStrings(tIndex)随便处置吧!>
NextFunction TextGetByFile(ByVal pFileName As String) As String
'从文件获得多行文本。
Dim tOutText As String
Dim tFileNumber As Integer
Dim tBytes() As Byte
tFileNumber = FreeFile
Open pFileName For Binary As #tFileNumber
If CBool(LOF(tFileNumber)) Then
ReDim tBytes(LOF(tFileNumber) - 1)
Get tFileNumber, 1, tBytes()
tOutText = StrConv(tBytes, vbUnicode)
Else
MsgBox "警告:文件" & pFileName & "是空的!", vbOKOnly, "文件无内容"
End If
Close #tFileNumber
TextGetByFile = tOutText
End Function
比如,用tString()=Replace("1,2,3,4,5",",")你可以获得一个有5个元素的数组(索引是0到4)。意思是:以","为间隔符号从字符串获得一个数组。换行符号也可以做间隔符号用:tStrings()=Split(tText,vbCrLf)这样,带有换行符号的文本就成了字符串数组。每个元素就是文件的一行。
从已打开的顺序文件中读出一行并将它分配给 String变量。语法Line Input #filenumber, varnameLine Input # 语句的语法具有以下几个部分:部分 描述
filenumber 必要。任何有效的文件号。
varname 必要。有效的 Variant 或 String 变量名。
说明通常用 Print # 将 Line Input # 语句读出的数据从文件中写出来。Line Input # 语句一次只从文件中读出一个字符,直到遇到回车符 (Chr(13)) 或回车–换行符 (Chr(13) + Chr(10)) 为止。回车–换行符将被跳过,而不会被附加到字符串上。VB 的行读函数。呵呵
比如,用tString()=Replace("1,2,3,4,5",",")你可以获得一个有5个元素的数组下面又对了——是Split函数 :)