穿成霍格沃茨的画像:VB中读取指定行

来源:百度文库 编辑:高校问答 时间:2024/04/30 12:38:33
我在程序(工程1)所在文件夹下有个 01.txt(假设行数足够多),
在form1中有5个Text文本框(数组,为text1(0)~text1(4))。

如何单击一个按钮(Commond1)后,五个文本框中的内容“分别”显示 01.txt中的第6~10行
即:text1(0)显示第六行的内容,text1(1)显示第七行的内容……。

俺是菜鸟,所以最好有完整代码!

不知道俺表达的清楚不?

谢谢!俺的邮箱:mew07@tom.com QQ:276789203

我在QQ里告诉你

Dim s As New System.IO.StreamReader("c:\\a.txt")
Dim strCur() As String
strCur = s.ReadToEnd.Split(Chr(13) & Chr(10))
上面的代码是把c:\\a.txt里面的内容存入数组strCur()中
dim i as Integer
for i=0 to 4
text1(i).text=strCur(i+5)
next

给你一段代码,试试。
Private Sub Command1_Click()
Dim strContent() As String
Dim i As Integer
Dim intCount As Integer

strContent = Split(readTextFile("G:\01.txt"), vbCrLf)

intCount = Text1.Count - 1
If UBound(strContent) < 10 Then Exit Sub
For i = 0 To intCount
Text1(i).Text = strContent(i + 5)
Next
End Sub

'// 使用FSO对象读取文件内容
Public Function readTextFile(ByVal strFileName As String) As String
Dim objFSO As Object
Dim objFile As Object
Dim objTextStream As Object
Dim lngFileLength As Long

On Error Resume Next

'// 创建 FileSystemObject 对象
Set objFSO = CreateObject("Scripting.FileSystemObject")

If objFSO.FileExists(strFileName) = False Then
readTextFile = ""
Exit Function
End If

Set objFile = objFSO.GetFile(strFileName)
lngFileLength = objFile.Size

If lngFileLength > 0 Then
Set objTextStream = objFile.OpenAsTextStream
'// 读取文件内容
readTextFile = objTextStream.Read(lngFileLength)
objTextStream.Close
End If

If Err.Number <> 0 Then
readTextFile = ""
Err.Clear
End If

Set objTextStream = Nothing
Set objFile = Nothing
Set objFSO = Nothing
End Function