使用 JavaScript 进行文件搜索






3.50/5 (7投票s)
使用 javascript 在客户端机器上搜索文件。
引言
这用于使用 javascript 在客户端机器上搜索文件。
使用代码
在运行此程序之前,请转到 Internet Explorer>工具>Internet 选项>安全>自定义级别>,然后启用“初始化并脚本 ActiveX 控件,即使它们未标记为安全”。
我正在使用 ActiveXObjectScripting.FileSystemObject
来搜索客户端机器上的驱动器、文件夹、子文件夹和文件。
var fSObj =new ActiveXObject("Scripting.FileSystemObject");作为 body onload 上的第一步,我们使用此 ActiveXObject 将系统中的驱动器填充到下拉列表 ddlDrive 中。在选择驱动器并输入要搜索的文件名后,我们调用递归函数
RecursiveSearch(path)
来迭代所选驱动器中的所有文件夹和子文件夹。function RecursiveSearch(path) { var txtSearch=document.getElementById('txtSearch'); var txtToSearch=new String(txtSearch.value); if(txtToSearch.substring(0,2)=="*.") { txtToSearch=txtToSearch.substring(1,txtToSearch.length); } txtToSearch=txtToSearch.toLowerCase(); var enObj = new Enumerator(fSObj.GetFolder(path).Files); for(i=0;!enObj.atEnd();enObj.moveNext()) { var fileName=new String(enObj.item(i).name); fileName=fileName.toLowerCase(); if(txtToSearch.substring(0,1)==".") fileName=fileName.substring(fileName.lastIndexOf("."),fileName.length); if(txtToSearch==fileName || fileName.search(txtToSearch)>-1) { .......... } } var enObj = new Enumerator(fSObj.GetFolder(path).SubFolders); for(i=0;!enObj.atEnd();enObj.moveNext()) { var path=new String(enObj.item(i).path); RecursiveSearch(path); } }
我们还在检索文件夹或文件时使用枚举器。
var enObj = new Enumerator(fSObj.GetFolder(path).Files); for(i=0;!enObj.atEnd();enObj.moveNext()) { ...... }
关注点
在编写代码的过程中,你学到了什么有趣/好玩/令人恼火的东西吗? 你做了什么特别巧妙、疯狂或异想天开的事情吗?
历史
在此处保持您所做的任何更改或改进的实时更新。