JS能否获取客户端系统文件夹目录和隐藏文件夹目录?
或者
JS获取本地文件夹目录后能否判断出文件夹是否是系统文件夹和隐藏文件夹/总之 最终目的是使用js获取客户端的磁盘上的文件目录,但是要排除系统文件夹和隐藏文件夹。
js能否满足要求呢? 如果能要怎么做?

解决方案 »

  1.   

    不需要访问本地文件,只需读出目录即可
    例如:C:\a\aa\aaa.txt我只读出c,c:\a\aa,c:\a\a\aaa,aaa.txt  而不用知道aaa.txt的内容,也不做修改
      

  2.   

    用ie的activeXobject插件可以读到路径,但是不能判断文件是否是隐藏的,这个你可以在msdn中查一下,不过我感觉没有相应的api
      

  3.   

    恩,我现在已经实现了读出目录,并生成一个树,但是现在树里含有系统文件夹(如WINDOWS),隐藏文件夹和系统保护文件夹,我想把这些给过滤掉,不知道有什么办法
      

  4.   

    你访问客户端文件和文件夹,不是利用FSO吗.
    使用FSO里的参数就可以指定在搜索的时候包括所有属性(含系统或隐藏)的文件或文件夹.在得到后,也可以通过取属性getAtrribute函数(拼写不一定完全对,记不太清,查一下)得到此文件或文件夹的属性是否是系统和隐藏的,判断处理...
      

  5.   

    使用FSO的getFolder(path)可以读出目录下的文件夹集合,但是并没有getAttributes这样的方法,虽然有一个Attributes,但是貌似并不是很好用。
      

  6.   

    var folder = fso.GetFolder("c://"); 
    for(var file in folder.Files){ 
       switch(f.attributes) {
           Case 0 Str="普通文件。没有设置任何属性。 " 
           Case 1 Str="只读文件。可读写。 " 
           Case 2 Str="隐藏文件。可读写。 " 
           Case 4 Str="系统文件。可读写。 " 
           Case 16 Str="文件夹或目录。只读。 " 
           Case 32 Str="上次备份后已更改的文件。可读写。 " 
           Case 1024 Str="链接或快捷方式。只读。 " 
           Case 2048 Str=" 压缩文件。只读。" 
       }
      

  7.   

    var folder = fso.GetFolder("c://");  
    for(var file in folder.Files){  
      switch(file.attributes) {
      Case 0 Str="普通文件。没有设置任何属性。 "  
      Case 1 Str="只读文件。可读写。 "  
      Case 2 Str="隐藏文件。可读写。 "  
      Case 4 Str="系统文件。可读写。 "  
      Case 16 Str="文件夹或目录。只读。 "  
      Case 32 Str="上次备份后已更改的文件。可读写。 "  
      Case 1024 Str="链接或快捷方式。只读。 "  
      Case 2048 Str=" 压缩文件。只读。"  
      }
    }
      

  8.   

    file.attributes 值是case中各个值的逻辑组合的,所以attributes可能是0,1,3,7... 所以你的方法不是很适合呀