TC官方合作论坛

 找回密码
 立即注册
查看: 2390|回复: 7

全盘查找文件,遍历文件夹想要的文件,TC5.0代码

[复制链接]
发表于 2015-8-16 14:28:21 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

列:
变量 路径=全盘查找("QQ.exe") ,找到返回"QQ.exe"的全路径,没找到返回 null,当前最多查找10层目录,可以根据需要自己添加...

功能 全盘查找(文件名)

    变量 文件路径,路径=数组("D:","E:","C:","F:","G:","H:")
    遍历(变量 i=0;i<6;i++)
        文件路径=查找文件(文件名,路径[i])
        如果(文件路径!=null)
            返回 文件路径
        结束
    结束
    返回 null

结束

功能 查找文件(文件名,初始路径)

    变量 数量1,文件1,文件夹1,当前路径1,遍历路径1=初始路径
    文件遍历(遍历路径1,文件1,文件夹1)
    数量1=数组大小(文件1)
    遍历(变量 c1=0;c1<数量1;c1++)
        如果(文件1[c1]==文件名)
            返回 遍历路径1&"/"&文件名
        结束
    结束
    数量1=数组大小(文件夹1)
    遍历(变量 c1=0;c1<数量1;c1++)
        当前路径1=遍历路径1&"/"&文件夹1[c1]
        变量 数量2,文件2,文件夹2,当前路径2,遍历路径2=当前路径1
        文件遍历(遍历路径2,文件2,文件夹2)
        数量2=数组大小(文件2)
        遍历(变量 c2=0;c2<数量2;c2++)
            如果(文件2[c2]==文件名)
                返回 遍历路径2&"/"&文件名
            结束
        结束
        数量2=数组大小(文件夹2)
        遍历(变量 c2=0;c2<数量2;c2++)
            当前路径2=遍历路径2&"/"&文件夹2[c2]
            变量 数量3,文件3,文件夹3,当前路径3,遍历路径3=当前路径2
            文件遍历(遍历路径3,文件3,文件夹3)
            数量3=数组大小(文件3)
            遍历(变量 c3=0;c3<数量3;c3++)
                如果(文件3[c3]==文件名)
                    返回 遍历路径3&"/"&文件名
                结束
            结束
            数量3=数组大小(文件夹3)
            遍历(变量 c3=0;c3<数量3;c3++)
                当前路径3=遍历路径3&"/"&文件夹3[c3]
                变量 数量4,文件4,文件夹4,当前路径4,遍历路径4=当前路径3
                文件遍历(遍历路径4,文件4,文件夹4)
                数量4=数组大小(文件4)
                遍历(变量 c4=0;c4<数量4;c4++)
                    如果(文件4[c4]==文件名)
                        返回 遍历路径4&"/"&文件名
                    结束
                结束
                数量4=数组大小(文件夹4)
                遍历(变量 c4=0;c4<数量4;c4++)
                    当前路径4=遍历路径4&"/"&文件夹4[c4]
                    变量 数量5,文件5,文件夹5,当前路径5,遍历路径5=当前路径4
                    文件遍历(遍历路径5,文件5,文件夹5)
                    数量5=数组大小(文件5)
                    遍历(变量 c5=0;c5<数量5;c5++)
                        如果(文件5[c5]==文件名)
                            返回 遍历路径5&"/"&文件名
                        结束
                    结束
                    数量5=数组大小(文件夹5)
                    遍历(变量 c5=0;c5<数量5;c5++)
                        当前路径5=遍历路径5&"/"&文件夹5[c5]
                        变量 数量6,文件6,文件夹6,当前路径6,遍历路径6=当前路径5
                        文件遍历(遍历路径6,文件6,文件夹6)
                        数量6=数组大小(文件6)
                        遍历(变量 c6=0;c6<数量6;c6++)
                            如果(文件6[c6]==文件名)
                                返回 遍历路径6&"/"&文件名
                            结束
                        结束
                        数量6=数组大小(文件夹6)
                        遍历(变量 c6=0;c6<数量6;c6++)
                            当前路径6=遍历路径6&"/"&文件夹6[c6]
                            变量 数量7,文件7,文件夹7,当前路径7,遍历路径7=当前路径6
                            文件遍历(遍历路径7,文件7,文件夹7)
                            数量7=数组大小(文件7)
                            遍历(变量 c7=0;c7<数量7;c7++)
                                如果(文件7[c7]==文件名)
                                    返回 遍历路径7&"/"&文件名
                                结束
                            结束
                            数量7=数组大小(文件夹7)
                            遍历(变量 c7=0;c7<数量7;c7++)
                                当前路径7=遍历路径7&"/"&文件夹7[c7]
                                变量 数量8,文件8,文件夹8,当前路径8,遍历路径8=当前路径7
                                文件遍历(遍历路径8,文件8,文件夹8)
                                数量8=数组大小(文件8)
                                遍历(变量 c8=0;c8<数量8;c8++)
                                    如果(文件8[c8]==文件名)
                                        返回 遍历路径8&"/"&文件名
                                    结束
                                结束
                                数量8=数组大小(文件夹8)
                                遍历(变量 c8=0;c8<数量8;c8++)
                                    当前路径8=遍历路径8&"/"&文件夹8[c8]
                                    变量 数量9,文件9,文件夹9,当前路径9,遍历路径9=当前路径8
                                    文件遍历(遍历路径9,文件9,文件夹9)
                                    数量9=数组大小(文件9)
                                    遍历(变量 c9=0;c9<数量9;c9++)
                                        如果(文件9[c9]==文件名)
                                            返回 遍历路径9&"/"&文件名
                                        结束
                                    结束
                                结束
                            结束
                        结束
                    结束
                结束
            结束
        结束
    结束
    返回 null

结束



回复

使用道具 举报

 楼主| 发表于 2015-8-19 16:53:47 | 显示全部楼层
发个简单点的:

变量 返回值=搜索文件("QQ.exe","D:/")
消息框(返回值)

功能 搜索文件(文件名,遍历路径)
   
    变量 返回值,文件数量,文件数组,文件夹数组
    文件遍历(遍历路径,文件数组,文件夹数组)
    文件数量=数组大小(文件数组)
    遍历(变量 i=0;i<文件数量;i++)
        如果(文件数组[i]==文件名)   
            返回 遍历路径&文件名
        结束
    结束
    文件数量=数组大小(文件夹数组)
    遍历(变量 i=0;i<文件数量;i++)
        如果(文件夹数组[i]=="")
            继续
        结束
        返回值=搜索文件(文件名,遍历路径&文件夹数组[i]&"/")
        如果(字符串截取右侧(返回值,字符串长度(文件名))==文件名)
            返回 返回值
        结束
    结束
    返回 null
   
结束
回复 支持 1 反对 0

使用道具 举报

发表于 2015-8-16 17:33:29 | 显示全部楼层
要不要这么复杂的啊。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-8-19 16:57:00 | 显示全部楼层
18667006365 发表于 2015-8-16 17:33
要不要这么复杂的啊。

回复 支持 反对

使用道具 举报

发表于 2015-10-6 20:21:49 | 显示全部楼层
不能模糊搜索吗
回复 支持 反对

使用道具 举报

发表于 2015-10-8 16:25:48 | 显示全部楼层

功能 搜索文件(文件名,遍历路径)
   
    变量 返回值,文件数量,文件数组,文件夹数组
    文件遍历(遍历路径,文件数组,文件夹数组)
    文件数量=数组大小(文件数组)
    遍历(变量 i=0;i<文件数量;i++)
           返回值=字符串查找(文件数组,文件名)
              
        调试输出(返回值)
        
        如果(返回值!=-1)   
             调试输出(遍历路径&文件数组)
        结束
    结束
    文件数量=数组大小(文件夹数组)
    遍历(变量 i=0;i<文件数量;i++)
        如果(文件夹数组=="")
            继续
        结束
        返回值=搜索文件(文件名,遍历路径&文件夹数组&"/")
        
    结束
回复 支持 反对

使用道具 举报

发表于 2015-12-11 14:24:06 | 显示全部楼层
有没有用WIN32实现的方法呀

回复 支持 反对

使用道具 举报

发表于 2023-9-5 22:13:22 | 显示全部楼层
666666
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-4-29 00:58 , Processed in 0.050230 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表