dim s as stringOpen "c:\aa.txt" For Input As #1 s = StrConv(InputB(LOF(1), #1), vbUnicode) '½«ÎļþÄÚÈݸ½¸ø±äÁ¿ S Close #1if instr(s,"你的字符串")<>0 then msgbox "这个字符串存在" else msgbox "这个字符串不存在" end if
Private Sub Command1_Click() dim s as stringOpen "c:\aa.txt" For Input As #1 s = StrConv(InputB(LOF(1), #1), vbUnicode) Close #1if instr(s,"你的字符串")<>0 then msgbox "这个字符串存在" else msgbox "这个字符串不存在" end if end sub
Private Sub Command1_Click() If InStr(ReadFile("xxx.txt"), "要找的字符串") Then MsgBox "找到" End Sub'读文本文件的函数 Function ReadFile(TXTFile As String) As String Dim fn As Integer: fn = FreeFile Open TXTFile For Binary Access Read As #fn ReadFile = Space(FileLen(TXTFile)) Get #fn, , ReadFile Close #fn End Function
是呀. 不过也可以这样:Dim Filenumber As LongFilenumber = FreeFile'这时就会自动分配一个空的文件号给你了 Open "c:\aa.txt" For Input As Filenumber s = StrConv(InputB(LOF(Filenumber), Filenumber), vbUnicode) Close Filenumber
最好方法:使用内存映射文件,将文件映射到内存,直接在内存中查找
s = StrConv(InputB(LOF(1), #1), vbUnicode) '½«ÎļþÄÚÈݸ½¸ø±äÁ¿ S
Close #1if instr(s,"你的字符串")<>0 then
msgbox "这个字符串存在"
else
msgbox "这个字符串不存在"
end if
dim s as stringOpen "c:\aa.txt" For Input As #1
s = StrConv(InputB(LOF(1), #1), vbUnicode)
Close #1if instr(s,"你的字符串")<>0 then
msgbox "这个字符串存在"
else
msgbox "这个字符串不存在"
end if
end sub
If InStr(ReadFile("xxx.txt"), "要找的字符串") Then MsgBox "找到"
End Sub'读文本文件的函数
Function ReadFile(TXTFile As String) As String
Dim fn As Integer: fn = FreeFile
Open TXTFile For Binary Access Read As #fn
ReadFile = Space(FileLen(TXTFile))
Get #fn, , ReadFile
Close #fn
End Function
如果我還要打開其它的文本文件,是不是只要把那個#1改成#2,LOF(1)改成LOF(2) ?是這樣嗎?
不过也可以这样:Dim Filenumber As LongFilenumber = FreeFile'这时就会自动分配一个空的文件号给你了
Open "c:\aa.txt" For Input As Filenumber
s = StrConv(InputB(LOF(Filenumber), Filenumber), vbUnicode)
Close Filenumber