javascript使用FSO控件操作本地文件系统

利用读取本地文件系统的信息需要利用ActiveX控件FileSystemObject(FSO), FSO对象的属性Drives表示所有的驱动器信息,通过遍历Drives可以获取Drive对象,Drive对象可以获取本地系统中的驱动器资源内容

,主要的属性如下:

DriveLetter:驱动器字母
DriveType:驱动器类型
FileSystem:所在驱动器的文件系统类型,取值为FAT、FAT32和NTFS。
VolumeName:卷标名称。

本文实现的功能是遍历本地文件系统的驱动器信息并绑定到页面的select元素。

(1)getDriverInfo方法获取驱动器信息的列表并以数组的形式返回。数组中存储的是Object对象,Object对象定义两个属性name和value,分别绑定到select元素的innerText和value。

(2)bindSelect方法将驱动器信息绑定到select元素,实现基于jquery。

/**
* 获取本地驱动器信息
* @return Array 驱动器信息的列表
*/
function getDriveInfo()
{

//创建FSO实例

var fso = new ActiveXObject(“Scripting.FileSystemObject”);

    var Enum = new Enumerator(fso.Drives);
//驱动器信息列表
    var driveInfoList=new Array();
    for(Enum.moveFirst(); !Enum.atEnd(); Enum.moveNext())
    {
//遍历获取驱动器信息
       var drive = Enum.item();
       var driveTypeDesc=””;
//获取驱动器信息的类型
      if(drive.DriveType==2)
      {
         driveTypeDesc=”本地磁盘”;
      }
      else if(drive.DriveType==1)
      {
        driveTypeDesc=”可移动磁盘”;
      }
      else if(drive.DriveType==4)
      {
        driveTypeDesc=”光驱”;
      }
      var obj=new Object();
      obj.value=drive.DriveLetter;
      obj.name=drive.VolumeName+”(“+drive.DriveLetter+”:)”+driveTypeDesc;
      driveInfoList.push(obj);
   }
    return driveInfoList;
}

/**

* 绑定select

* @param String elSelectId 显示驱动器信息的Select元素的ID

* @param Array list select的数据源,列表每一项为Object对象。

*/

function bindSelect(elSelectId,list)

{

var elSelect=$(“#”+elSelectId)[0];

//首先清空原有的option

if($(“#”+elSelectId)[0].options.length>0)

{

$(“#”+elSelectId)[0].options.length=0;

}

{

}

}

function init()

{

bindSelect(“driveList”, getDriveInfo());

}

驱动器信息:

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《javascript使用FSO控件操作本地文件系统
本文地址:https://www.zhiletu.com/archives-570.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微