TC官方合作论坛
标题:
Tui应用--文件搜索工具
[打印本页]
作者:
超自然
时间:
2015-8-20 22:37
标题:
Tui应用--文件搜索工具
最近看到论坛有人发文件搜索工具,想起自己4版本的时候也写过,兴起就搬到了5版本上.主要只是应用并展示Tui界面
[attach]21462[/attach]
[attach]21463[/attach]
本搜索工具支持*和?两个windows通配符.
左侧树形框为目录区,右侧列表框为文件区
双击目录树可以展开该目录
由于列表框没有优化,面对大量数据连续添加时,效率低下.因此,
当双击目录树
(双击目录树会引发枚举该目录文件)
或者搜索结果数量非常多时,可能长时间出现无响应的问题,请耐心等待.
因为支持通配符意味着可以诸如*.*或者*.exe之类的模糊条件搜索,这可能会导致枚举到巨量数据.枚举结束时大量数据持续涌入列表框将严重拖慢整个程序,因此,
强烈建议:搜索文件尽可能提供完整目标文件名,尽量不要使用*.*之类的语句!!除非你非常有耐心...(我试过*.*枚举所有盘区,闹了45分钟还没完事.)
双击右侧文件名可以直接打开该文件所在目录并定位该文件.
以下是搜索核心代码
function 递归过程(路径,文件名,&最终结果)
var 文件,文件夹,数量,tmp
文件遍历(路径,文件,文件夹)
数量=数组大小(文件)
for(var i = 0; i < 数量; i++)
tmp=字符串转小写(文件[i])
if(dllcall("shlwapi.dll","int","PathMatchSpecW","wchar *",文件[i],"wchar *",文件名)!=0)
数组增加元素(最终结果,array(路径,文件[i]),null)
end
end
数量=数组大小(文件夹)
for(var i = 0; i < 数量; i++)
tmp=字符串修剪(文件夹[i])
if(tmp!="")
递归过程(路径&"\\"&文件夹[i],文件名,最终结果)
end
end
return 数组大小(最终结果)
end
复制代码
其中的
PathMatchSpecW是支持通配符的关键函数
作者:
a837198
时间:
2015-8-20 23:09
不错不错
作者:
言术
时间:
2015-8-21 04:23
了解一下
作者:
qwe1063422121
时间:
2015-8-21 08:29
...............
作者:
itcfan
时间:
2015-8-21 08:54
作者:
good
时间:
2015-8-21 09:50
作者:
oycs429
时间:
2015-9-29 09:45
作者:
DavonFok
时间:
2015-9-29 23:47
学习一下
作者:
785953306
时间:
2015-10-8 11:24
其中的PathMatchSpecW是支持通配符的关键函数
作者:
sanmaodo
时间:
2015-10-8 13:28
向你学习。
作者:
a8012602
时间:
2015-10-18 10:27
shlwapi.dll
作者:
somyyy
时间:
2015-10-25 01:11
不错
作者:
21522282
时间:
2015-11-1 19:46
学习中,很受用!
作者:
18667006365
时间:
2015-11-3 15:06
看看
作者:
ylcc126
时间:
2015-11-11 19:53
本帖最后由 ylcc126 于 2016-4-8 20:14 编辑
该回复已被删除
作者:
gospeell
时间:
2015-11-13 15:00
看看
作者:
gospeell
时间:
2015-11-13 15:01
了解一下
作者:
极速齿轮
时间:
2015-12-26 14:00
学习学习了
作者:
rxuehao
时间:
2016-1-3 20:35
太屌了!
作者:
469295445
时间:
2016-1-3 21:17
作者:
花落莫相离
时间:
2016-1-8 14:24
作者:
xiaoyaoaiz
时间:
2016-3-27 19:13
感谢分享
作者:
zxj8645
时间:
2016-4-10 03:06
Tui应用--文件搜索工具 [修改]
作者:
悟空道人
时间:
2016-4-14 12:12
看一看
作者:
312120292
时间:
2016-4-14 13:30
额 看看
作者:
JSDYWZ
时间:
2016-5-21 10:50
[界面] Tui应用
作者:
sunshadow_ja
时间:
2016-6-2 19:35
66666666666666666666666
作者:
dmcl
时间:
2016-6-14 09:17
感谢分享
作者:
天生的叛逆者
时间:
2016-7-4 12:33
作者:
zhuhh2000
时间:
2016-8-21 06:09
多谢
作者:
ybc178
时间:
2016-8-25 00:45
支持
作者:
tbmbx2017
时间:
2016-9-9 13:30
请让本宝宝看下吧。
作者:
nfapp
时间:
2016-9-27 13:16
支持一下
作者:
pop_tiger
时间:
2016-10-26 20:01
学习一下
作者:
y874855105
时间:
2016-10-27 09:17
学习
作者:
295384962
时间:
2016-11-10 14:50
555555555555555555555555555
作者:
16490020
时间:
2016-11-27 11:16
这东西找了好久勒,谢谢!!
作者:
karl223
时间:
2017-1-19 13:11
看看
作者:
goman
时间:
2017-1-29 22:52
对楼猪只能说,你太伟大了!!
作者:
ms5084456
时间:
2017-3-16 18:34
支持
作者:
etpower@126.com
时间:
2017-3-31 21:01
想学习一下
作者:
baby杰杰
时间:
2017-4-14 13:29
我就是喜欢你的作品,太强大
作者:
719720807
时间:
2017-5-16 22:29
666666666666666666666
作者:
460071560
时间:
2017-5-21 00:00
顶顶顶顶顶顶顶顶顶顶
作者:
gaolong630
时间:
2017-8-13 03:53
学习学习
作者:
itsok
时间:
2017-9-26 23:47
顶顶顶顶顶顶顶顶顶顶
作者:
milai5201
时间:
2017-11-15 20:54
12345678123456789
作者:
donggua11
时间:
2017-11-20 22:23
学习学习
作者:
qq324974
时间:
2017-11-21 01:27
Tui应用--文件搜索工具
作者:
一只熊
时间:
2017-11-21 14:11
好东西,拿走了
作者:
113a26
时间:
2017-12-21 18:16
JVN,HJK,CHJ
作者:
huakeha
时间:
2018-1-1 19:33
PathMatchSpecW是支持通配符的关键函数
作者:
apoul
时间:
2018-1-16 17:00
asdfafadfdasfa
作者:
apoul
时间:
2018-1-16 17:00
asdfafadfdasfa
作者:
apoul
时间:
2018-1-16 17:00
asdfafadfdasfa
作者:
apoul
时间:
2018-1-16 17:00
asdfafadfdasfa
作者:
Jäger
时间:
2018-3-16 11:51
666666666666666666666666
作者:
q979033318
时间:
2018-3-19 02:08
作者:
kgg666
时间:
2018-3-22 16:26
000000000000000
作者:
wenbostudio
时间:
2018-4-11 23:20
sdntcvgbhn/<L>;/
作者:
cococo789
时间:
2018-7-3 20:46
等等
作者:
fhjym
时间:
2018-8-27 11:36
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1