前言:
目前我们对“代码读取文件”可能比较讲究,大家都想要剖析一些“代码读取文件”的相关知识。那么小编也在网上搜集了一些关于“代码读取文件””的相关资讯,希望兄弟们能喜欢,看官们快快来了解一下吧!大家好,我们今日继续讲解VBA代码解决方案的第128讲内容:从顺序文件中读取自定义字符数和读取整个文件内容的方法。在上一讲中我们讲了按行读取顺序文件的方法,有时却不都是这种情况,例如让程序检查文件中某个特定的字符出现了多少个,这时你该怎么办呢?此时可以使用函数Input来返回特定的字符数,而不必读取整行。
Input的语法: Input(number, [#]filenumber)
参数
①number明确你要读取的字符数。
②filenumber是Open语句用来打开文件的同一个数字。
注意:Input函数返回所有读取的字符,包括逗号,回车,文件结束字符,引号和前导空格。
下面我们实例讲解一下Input函数的应用过程 ,我们要在人员表单中查出姓张的一共有多少人,代码如下:
Sub mynzColons()
Dim num As Integer
Dim zhang As String
num = 0
Open "E:\nz\work\文章\人员表单.txt " For Input As #1
Do While Not EOF(1)
zhang = Input(1, #1)
If zhang = "张" Then
num = num + 1
End If
Loop
If num <> 0 Then
MsgBox "表单中姓张的共: " & num & "人!"
Else
MsgBox "没有姓张的人员."
End If
Close #1
End Sub
代码截图:
看看返回的结果:
反馈结果是2人。
注意点:Input函数允许你返回顺序文件中的任何字符。如果你使用VBA函数LOF作为Input函数的第一个参数时,你将能够快速地读取顺序文件里的内容,而不需要在整个文件上循环。备注:LOF函数返回一个文件上的字节数。每个字节对应了文本文件里的一个字符。下面我们看看下面的实例:
Sub mynzReadAll()
Dim myall
Open "E:\nz\work\文章\人员表单.txt " For Binary As #1
myall = Input(LOF(1), #1)
MsgBox myall
Close #1
End Sub
代码截图:
返回结果:
上文中讲解了返回的内容在对话框msgbox中体现,你还可以将其读取到一个文本框之中去,这项内容由于篇幅的限制,将在《VBA代码解决方案》中详细说明。
今日内容回向:
1 如何读取单个字符?
2 如何快速的提取整个顺序文件的内容?
标签: #代码读取文件