枚举文件的两种办法

By admin at 2017-12-10 • 0人收藏 • 305人看过
import console;
import fsys
console.open();
var sss = "sleep";
var 结果={}
var t = time.tick()
fsys.enum( "~/lib/", "*.aardio",
    function(dir,filename,fullpath,findData){ 
        if(filename){
             var str = string.load(fullpath)
             if(string.indexOf(str,sss)){
                 table.push(结果,fullpath)
             }
        }
    } 
    ,/*如果此参数为false则忽略子目录*/
); 
console.print(time.tick()-t)
console.varDump(结果)
execute("pause")

多线程方式:

import console; 
import fsys
 
var fileTab = {}
fsys.enum( "~/lib", "*.aardio",
    function(dir,filename,fullpath,findData){ 
        if(filename){ 
           //    io.print("发现文件:"+filename,"完整路径:"+fullpath)
             table.push(fileTab,fullpath)
        }
         
    } 
    ,/*如果此参数为false则忽略子目录*/
);
thread.set("标志键", "fsys")
import thread.works
var works = thread.works( 20,
    function( args ) {
        import console
        if(string.indexOf(string.load(args),thread.get("标志键")))
        console.log(args)
    } 
);
 
for(i=1;#fileTab;1){
    works.push(fileTab[i])
}
works.wait()
console.log("ok")
console.pause(true);

1 个回复 | 最后更新于 2018-11-09
2018-11-09   #1

如果想要一次枚举几种后缀, 那么只需要输入是个字符表即可.

fsys.enum( v, {"*.mp4";"*.ts"},
				function(dir,filename,fullpath,findData){ 
					if(filename){ 
			           console.log(fullpath)
					}
					else{
						//console.log( "发现目录:" + dir )
					}
				} 
				,/*如果此参数为false则忽略子目录*/
			);


登录后方可回帖

登 录
信息栏
本站永久域名:HtmLayout.Cn
纯私人站,当笔记本用的,学到哪写到哪,目前正在学aardio+halcon机器视觉.
本 站 主 站:Stm32cube中文网
Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
aardio在线手册Aardio在线手册
黑猫Aar教程网:简码编程
C大Aardio论坛:Aar爱好者论坛
AARDIO语言QQ群:70517368
赞助商:才仁机械
下载站:非凡软件站
Loading...