文件夹操作主要包括创建、复制、移动和删除文件夹,检查文件夹是否存在以及指定路径中某文件夹中相应的文件对象。完成这些操作可以使用 FileSystemObjec对象或 Folder 对象的方法。
一、使用 FileSystemObject 对象的相应方法进行文件夹进行操作
1、使用 FileSystemObject 对象创建文件夹时,先要创建 FileSystemObject 对象,再使用它的 CreateFolder 方法创建文件夹对象,其语法格式如下:
fso.CreateFolder(foldername)
参数 object 指定 FileSystemObject 对象的名称。foldername 是一个字符串表达式,用于指定要创建的文件夹。
2、复制文件夹:将一个或多个文件夹复制到其他位置上,语法格式如下:
<% fso.CopyFolder source,destination[,overwrite] %>
* fso :指定 FileSystemObject 对象的名称;
* source :表示指定源文件夹的字符串,要复制一个或多个文件夹时,可以有通配符;
* destination :表示目标位置的字符串,从 source 复制文件夹到该位置,不允许使用通配符;
* overwrite :是可选参数,取 Boolean 值,表明是否覆盖现有文件夹:如果是 True (默认值),则覆盖;如果是 False ,则不覆盖。
注:
* 只能在 Source 参数的路径最后一个组成部分中使用通配符。
* 如果 destination 不存在,则复制 Source 文件夹及其所有内容;
* 如果 destination 是已经存在的文件夹,则会出现错误;
* 如果 destination 是目录,则复制文件夹和其中的所有内容。如果在 destination 中已经存要 source 包含的文件,且 overwrite 为 False ,则会出现错误,否则,复制该文件覆盖现有文件。
* 如果 destination 是只读目录,在向该目录复制现有喜人读文件,且 overwrite 为 False 时,就会出现错误。;
* 如果 source 使用通配符,但没有匹配的文件时,将会出现错误;
* CopyFolder 方法在遇到出现的第一个错误时停止。该方法不会撤消错误发生前所做的任何更改。
3、移动文件夹:将一个或多个文件夹从某位置移动到另一个位置,语法格式如下:
<% fso.MoveFolder source,destination %>
* fso :指定 FileSystemObject 对象的名称;
* source :指定要移动的文件夹的路径,该参数字符串只可在路径的最后一个组成部分中用通配符;
* destination :指定路径,表示要将文件夹移动到该目标位置,该参数不能包含通配符。
注:
* 如果 destination 不存在,则进行文件夹移动;
* 如果 destination 是已经存在的文件夹,则会出现错误;
* 如果 destination 是目录,则会出现错误;
* 如果 source 使用通配符但没有匹配的文件时,将会出现错误;
* MoveFolder 方法在遇到出现的第一个错误时停止。该方法不会撤消错误发生前所做的任何更改。
4、删除文件夹:删除指定的文件夹,语法格式如下:
<% fso.DeleteFolder filespec[.force]
* fso:指定 FileSystemObject 对象的名称;
* filespec 指定要删除的文件夹名称,在路径的最后一个组成部分中可以包含通配符;
* force:是可选参数,取Boolean 值,如果要删除只读文件夹,则该值为 True,否则为 False (默认)。;
* 如果没有找到匹配文件,将会出现错误。DeleteFile 方法在遇到出现的第一个错误时停止。该方法不会撤消错误发生前所做的任何更改。
5、检查指定的文件夹是否存在,如果该文件夹存在,则返回 True,,否则返回 False。语法格式如下:
<% object.FolderExists(folderspec) %>
6、使用 GetFolder 方法返回与指定的路径中某文件相应的 Folder 对象。其语法格式如下:
<% object.GetFolder(folderspec)
object 指定FileSystemObject 的名称,folderspec 指定文件夹的路径。如果指定的文件夹不存在,则会出现错误。
7、 使用 GetParentFolderName 方法返回一个字符串,该字符串包含指定的路径中最后一个文件或文件夹的父文件夹。其语法格式如下:
object.GetParentFolderFolderName(Path)
path 指定路径,给出要返回文件或文件夹的父文件夹名。如果 GetParentFolderName 方法返回零长度字符串('“”)。另外,GetParentFolder 方法只能对提供的 Path 字符串起作用。它不能试图分析一个路径,也不能检查指定的路径是否存在。
实例(folder/1.asp):使用 FileSystemObject 对象完成文件夹的创建、复制、移动、检查和删除操作。代码如下:
<%@ language="vbscript" %>
<html>
<head><title>文件夹操作示例</title></head>
<body>
<%
Dim fso
Set fso=Server.CreateObject("Scripting.FileSystemObject")
%>
<p>正在创建文件夹......</p>
<% fso.CreateFolder(Server.MapPath("newfolder")) %>
<p>正在复制文件夹......</p>
<% fso.CopyFolder Server.MapPath("newfolder"),Server.MapPath("newfolder1") %>
<p>正在移动文件夹......</p>
<% fso.MoveFolder Server.MapPath("newfolder1"),Server.MapPath("newfolder2") %>
<p>检查newfolder1文件夹是否存在......</p>
<% if (fso.FolderExists(newfolder1)) then
response.write "newfolder1 文件夹存在"
Else
Response.write "newfolder1 文件夹不存在"
end if
%>
<p>正在删除文件夹......</p>
<% fso.DeleteFolder Server.MapPath("newfolder") %>
<% fso.DeleteFolder Server.MapPath("newfolder2") %>
</body>
</html>
二、使用 Folder 对象的操作文件夹
1、Folder 对象的方法
Folder 对象的方法方 法 | 描 述 |
Cope | 将指定的文件夹从某位置复制到另一位置。 |
Move | 将指定的文件夹从某位置移动到另一位置。 |
Delete | 删除指定的文件夹及其所有的内容。 |
Folder 对象属性
属 性 | 描 述 |
Files | 返回由指定文件夹中所有 File 对象(包括隐藏文件和系统文件)组成的 Files集合。 |
Name | 设置或返回指定的文件夹的名称。 |
ParentFolder | 返回指定文件夹的父文件夹。 |
Size | 返回指定文件夹中所有文件和子文件夹的字节数。 |
SubFolders | 返回由指定文件夹中所有子文件夹(包括隐藏文件夹和系统文件夹)组成的 Folders 集合。 |
IsRootFolder | 检查指定的文件夹是不是根文件夹,如果是根文件夹,则返回 True;否则返回 False。 |
3、实例2(2/folder.asp):列出当前文件夹中所有文件的名称和字节数,其代码如下:
<html>
<head>
<title>文件夹操作示例</title>
</head>
<body>
<%
Dim fso,fld,f
Set fso=Server.CreateObject("Scripting.FileSystemObject")
Set fld=fso.GetFolder(Server.MapPath("."))
%>
<table align="center" border="1" cellspacing="0" width="50%">
<caption><b>当前文件夹中的文件列表(共<%=fld.files.Count %>个文件)</b></caption>
<tr bgcolor="#caeeff"><th>文件名</th><th>字节数</th>
<% for Each f in fld.Files %>
<tr><td><%=f.name %></td><td><%=f.size %></td></tr>
<% next %>
</table>
</body>
</html>
出处:http://www.bianceng.cn/webkf/asp/200802/7390_2.htm