let result=[]
function finder(path) {
let files=fs.readdirSync(path)
files.forEach((val,index) =>{
let fPath=join(path,val)
let stats=fs.statSync(fPath)
if(stats.isDirectory()) finder(fPath)
if(stats.isFile()) result.push(fPath)
})
}
finder(startPath)
return result
}
let fileNames=findSync('./')
实例说明BuildPath(路径,文件名) //这个方法会对给定的路径加上文件,并自动加上分界符
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
var newpath = fso.BuildPath("c:\\tmp", "51js.txt")//生成 c:\tmp\51js.txt的路径
alert(newpath)
-->
</SCRIPT>
CopyFile(源文件, 目标文件, 覆盖) //复制源文件到目标文件,当覆盖值为true时,如果目标文件存在会把文件覆盖
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bak")
-->
</SCRIPT>
CopyFolder(对象目录,目标目录 ,覆盖) //复制对象目录到目标目录,当覆盖为true时,如果目标目录存在会把文件覆盖
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\")//把C盘的Desktop目录复制到D盘的根目录
-->
</SCRIPT>
CreateFolder(目录名) //创建一个新的目录
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
var newFolderName = fso.CreateFolder("c:\\51JS")//在C盘上创建一个51JS的目录
-->
</SCRIPT>
CreateTextFile(文件名, 覆盖) //创建一个新的文件,如果此文件已经存在,你需要把覆盖值定为true
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
var newFileObject = fso.CreateTextFile("c:\\autoexec51JS.bat", true)//脚本将在C盘创建一个叫 autoexec51JS.bat的文件
-->
</SCRIPT>
DeleteFile(文件名, 只读?) //删除一个文件,如果文件的属性是只读的话,你需要把只读值设为true
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")//为了安全我先把要删除的autoexec.bat备份到你的D盘
var newpath = fso.CopyFile("c:\\autoexec.bat", "d:\\autoexec.bat")//把C盘的autoexec.bat文件删除掉
fso.DeleteFile("c:\\autoexec.bat", true)
-->
</SCRIPT>
DeleteFolder(文件名, 只读?)//删除一个目录,如果目录的属性是只读的话,你需要把只读值设为true
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
fso.CopyFolder("c:\\WINDOWS\\Desktop", "d:\\")//为了安全我先把你C盘的Desktop目录复制到你D盘的根目录
fso.DeleteFolder("c:\\WINDOWS\\Desktop", true)//把你的Desktop目录删除,但因为desktop是系统的东西,所以不能全部删除,但.........
-->
</SCRIPT>
DriveExists(盘符) //检查一个盘是否存在,如果存在就返会真,不存在就返回.......
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
hasDriveD = fso.DriveExists("d")//检查系统是否有D盘存在
hasDriveZ = fso.DriveExists("z")//检查系统是否有Z盘存在
if (hasDriveD) alert("你的系统内有一个D盘")
if (!hasDriveZ) alert("你的系统内没有Z盘")
-->
</SCRIPT>
FileExists(文件名) //检查一个文件是否存在,如果存在就返会真,不存在就返回.......
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
fileName = fso.FileExists("c:\\autoexec.bat")
if (fileName) alert("你在C盘中有autoexec.bat文件,按下确定后这个文件将被删除!")//开个玩笑:)
-->
</SCRIPT>
FolderExists(目录名) //检查一个目录是否存在,如果存在就返会真,不存在就返回.......
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
folderName = fso.FolderExists("c:\\WINDOWS\\Fonts")
if (folderName) alert("按下确定后系统的字库将被删除!")//开个玩笑:)
-->
</SCRIPT>
GetAbsolutePathName(文件对象) //返回文件对象在系统的绝对路径
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
pathName = fso.GetAbsolutePathName("c:\\autoexec.bat")
alert(pathName)
-->
</SCRIPT>
GetBaseName(文件对象) //返回文件对象的文件名
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
baseName = fso.GetBaseName("c:\\autoexec.bat")//取得autoexec.bat的文件名autoexec
alert(baseName)
-->
</SCRIPT>
GetExtensionName(文件对象) //文件的后缀
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
exName = fso.GetExtensionName("c:\\autoexec.bat")//取得autoexec.bat后缀bat
alert(exName)
-->
</SCRIPT>
GetParentFolderName(文件对象) //取得父级的目录名
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
parentName = fso.GetParentFolderName("c:\\autoexec.bat")//取得autoexec.bat的父级目录C盘
alert(parentName)
-->
</SCRIPT>
GetSpecialFolder(目录代码) //取得系统中一些特别的目录的路径,目录代码有3个分别是 0:安装Window的目录 1:系统文件目录 2:临时文件目录
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
tmpFolder = fso.GetSpecialFolder(2)//取得系统临时文件目录的路径 如我的是 C:\windows\temp
alert(tmpFolder)
-->
</SCRIPT>
GetTempName() //生成一个随机的临时文件对象,会以rad带头后面跟着些随机数,就好象一些软件在安装时会生成*.tmp
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
tmpName = fso.GetTempName()//我在测试时就生成了radDB70E.tmp
alert(tmpName)
-->
</SCRIPT>
MoveFile(源文件, 目标文件) //把源文件移到目标文件的位置
<SCRIPT LANGUAGE="JavaScript">
<!--
var fso = new ActiveXObject("Scripting.FileSystemObject")
var newpath = fso.MoveFile("c:\\autoexec.bat", "d:\\autoexec.bat")//把C盘的autoexec.bat文件移移动到D盘
-->
</SCRIPT>
然后在入口文件中调用即可:
这样就能一次性引用所有文件了。
该模块还提供了一些额外参数:
这样可以实现两个功能:
这适用于定义为类的控制器文件,如:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)