深入解析ASP核心技术
上QQ阅读APP看书,第一时间看更新

1.4 文件夹集合

Drive对象的RootFolder属性返回的是驱动器的根文件夹,它是一个Folder对象。Folder对象的SubFolders属性返回所有子文件夹的集合,可以使用For Each语句遍历它,集合中的每一项都是一个Folder对象。

下例输出C盘根目录下的所有文件夹的名字。

FolderList.asp

<%@codepage=936%>
<! --#include File="fso_function.asp" -->
<%
Response.Charset = "GBK"

Set fso = CreateObject("Scripting.FileSystemObject")

'取得C盘根目录
Set rootFolder = fso.GetDrive("c:\").RootFolder

'取得子文件夹的集合
Set folders = rootFolder.SubFolders

'文件夹个数
response.write "文件夹个数:" & folders.count & "<br>"

'输出子文件夹的名字
For Each folder In folders
    Response.Write folder.name & "<br>"
Next
Set fso = Nothing
%>

运行结果如图1-3所示。

图1-3 输出C盘根目录下的所有文件夹

其中,System Volume Information实际上是一个隐藏文件夹。在资源管理器中可能看不到它,但对于FSO来说,一览无余。FSO会把具有隐藏、系统属性的文件夹都列出来。