VB如何读取File1.filelistBOX中的所有txt文件?

VB如何读取File1.FILELISTBOX中的所有txt文件?我要检测该目录下所有TXT文件是否含有指定字符。请问是遂一读取检测快?还是将该目录下所有TXT文件读入一... VB如何读取File1.FILELISTBOX中的所有txt文件?
我要检测 该目录下所有TXT文件是否含有指定字符。请问是遂一读取检测快?

还是将该目录下所有TXT文件读入一个总的变量(即可合一个变量或合成一个txt文件)
再检测快??

如果我要将File1.FILELISTBOX中所有TXT(这里面也只有txt)文件,都合成一个字符串变量代码怎么写?

能像listbox一样么:
Text2.Text = Text2.Text & ListBox1.List(i)
?
2---
实际上我要读的TXT文档都是 时间为前缀 &自动保存,txt,即同时要防止不是我要的TXT文件。
我刚发贴后我一会我就想到怎么弄了,
For i = 0 To File1.ListCount
Dim aa As String * 1 '读取文件
Dim aaa
Open File1.List(i) For Input As #1
Do While Not EOF(1)
aa = Input(1, #1)
aaa = aaa + aa
Loop
Close #1
Text1 = Text1+aaa
Next
读取文件时用 File1.List(i) 来作为路径,取得第一个文本所有字符 ,再循环取第二个(第i个)文件字符 加上。我有急事走开,还没来得及测试,请先帮我看是否如此!
测试后在Open File1.List(i) For Input As #1出错,何解?

3-----
我知道了,是应该For i = 0 To File1.ListCount-1 或者加入 If Text2.Text <> "" Then就成功了。原来是第一调试出错时就直接复制一楼的,没注意看到他上面没有-1。
展开
 我来答
匿名用户
推荐于2016-07-30
展开全部
File1.Path = "d:\360"'设置路径
File1.Pattern = "*.txt"'匹配 txt 文件

For i = 0 To File1.ListCount
    '处理文件 File1.list(i) 为文件名
Next


似乎是遂一读取检测快,因为有时文件未完全读取完,就已经找到答案了。

不需要读取所有的文件。

更多追问追答
追问
我刚发贴后我一会我就想到怎么弄了,
Dim aa As String * 1 '读取文件
Dim aaa
For i = 0 To File1.ListCount
Open File1.List(i) For Input As #1
Do While Not EOF(1)
aa = Input(1, #1)
aaa = aaa + aa
Loop
Close #1
Text1 = Text1+aaa
Next
追答
Dim aa  As String * 1  '读取文件
Dim aaa
For i = 0 To File1.ListCount-1
Open File1.List(i) For Input As #1
Do While Not EOF(1)
 aa = Input(1, #1)
aaa = aaa + aa
Loop
'逐个查找文本
if instr(aaa,keyword)<>0 then 
    msgbox "found " & keyword & " in " & file1.list(i)
    end if
Close #1
Next

嗯,我看到你已经找到了读取字符串的方法。

其实不用显示出来到 text1,直接对 aaa 进行判断就知道有没有了。

接下来 用 instr()函数就可以判断了。


比如 instr(text1,keyword) 就可以了,如果 返回值不为零就表示包含此字符串,第一次出现的位置就是 instr(text1,keyword)

学识渊博者
2013-08-05 · TA获得超过127个赞
知道小有建树答主
回答量:259
采纳率:0%
帮助的人:212万
展开全部

代码如下

private sub form_load()
dim path as string 
dim mystring as string '这就是您想要的指定字符
my string = "a.txt"

path = dir("c:\")'您的目录
do while len(path) > 0 '开始循环列出c盘下的文件
if right(path,4) = ".txt" then msgbox path '这就是过滤出来的txt文件
'if path = mystring then msgbox "已经找到目标!" 这就是您说的是否含有指定字符
path = dir() '继续下一个文件 
loop 
end sub

以上能够摆脱FILELISTBOX,读取txt文件,列出一个文件夹下想要的文件。

追问
但实际上我要读的TXT文档都是  时间为前缀 &自动保存,txt,也就是说 同时要防止有些不是我要的TXT文件,  那么是不是改成   if right(path,8) = "自动保存,txt" then msgbox path  ?
这种快还是我刚才追问(或补充)的那种快呢?

上面方法不对啊,是不全盘搜索的??

我搜一个只有某个TXT文件里面才有字符,却还是跳出其也文档名
追答
正确,这种方法适用于指定的目录遍历文件,全盘搜索文件的话那网上的举例就很多了
应该改成:
if right(path,8) = "自动保存.txt"
这样应该不会跳出其他的文档呀?此代码的解释为检测path字符串右边8个的值是否为“自动保存.txt”
此代码并未经过VB6.0调试,有错误敬请指出,谢谢!
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式