Scripting.FileSystemObject 主要是用来操作本地文件、目录等,查询、创建、删除等操作,由于在flex中提供了操作控件,但并不能获取文件、目录的路径,因此,利用js实现是不错的选择。
1.搜寻本地某目录下的所有文件:
function searchFiles(path){
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.GetFolder(path);
//alert(f);
return getFiles(f)+ getSubFolders(f);
}
function getFiles(f)
{
var fc = new Enumerator(f.files);
var allFiles="";
//以下内容是显示文件名
for (; !fc.atEnd(); fc.moveNext())
{
allFiles+=fc.item()+";";
}
return allFiles ;
}
function getSubFolders(f){
var fso = new ActiveXObject("Scripting.FileSystemObject");
fk = new Enumerator(f.SubFolders);
var s="";
//循环子目录
for (; !fk.atEnd(); fk.moveNext())
{
s+=getFiles(fk.item());
}
return s;
}
searchFiles返回在path路径下所有文件(绝对路径),若要获取.mp3文件集合,只需对获取到得所有路径进行过滤即可
2.创建文件
var fso = new ActiveXObject("Scripting.FileSystemObject");
if(fso.FileExists(path))
alert("文件名已存在,请重新命名");
else
// alert(path.length);
fso.CreateTextFile(path,true);
CreateTextFile函数的参数true表示,创建并覆盖已存在的文件
3、重命名文件
该控件无重命名功能,若要实现,需先删除原先文件,然后创建,以变相实现