ASP入门基础教程-文件操作
文件操作主要包括复制、移动和删除文件,检查文件是否存在以及获取文件的属性。完成这些操作可以使用 FileSystemObject 或 File 对象的方法。
一、使用 FileSystemObject 对象的相应方法进行文件操作
1、复制文件:将一个或多个文件复制到其他位置上,语法格式如下:
<% fso.CopyFile source,destination[,overwrite] %>
* fso :指定 FileSystemObject 对象的名称;
* source :表示指定文件的字符串,要复制一个或多个文件时,文件名中可以有通配符;
* destination :表示目标位置的字符串,从 source 复制文件到该位置,不允许使用通配符;
* overwrite :是可选参数,取 Boolean 值,表明是否覆盖现有文件:如果是 True (默认值),则覆盖文件;如果是 False ,则不覆盖现有文件。
注:如果 destinatiion 设为只读属性,则无论 overwrite 参数设置为何值,CopyFile 操作无法完成。
只能在 Source 参数的路径最后一个组成部分中使用通配符。
2、移动文件:将一个或多个文件从某位置移动到另一个位置,语法格式如下:
<% fso.MoveFile source,destination %>
* fso :指定 FileSystemObject 对象的名称;
* source :指定要移动的文件的路径,该参数字符串只可在路径的最后一个组成部分中用通配符;
* destination :指定路径,表示要将文件移动到该目标位置,该参数不能包含通配符。
注:
* 如果 destination 不存在,则进行文件移动;
* 如果 destination 是已经存在的文件,则会出现错误;
* 如果 destination 是目录,则会出现错误;
* 如果 source 使用通配符但没有匹配的文件时,将会出现错误;
* MoveFile 方法在遇到出现的第一个错误时停止。该方法不会撤消错误发生前所做的任何更改。
3、删除文件:删除指定的文件,语法格式如下:
fso.DeleteFile filespec[.force]
* fso:指定 FileSystemObject 对象的名称;
* filespec 指定要删除的文件名,在路径的最后一个组成部分中可以包含通配符;
* force:是可选参数,取Boolean 值,如果要删除只读文件,则该值为 True,否则为 False (默认)。;
* 如果没有找到匹配文件,将会出现错误。DeleteFile 方法在遇到出现的第一个错误时停止。该方法不会撤消错误发生前所做的任何更改。
4、实例1(5/file.asp) 创建一个文本文件并写入内容,然后执行复制、移动和删除操作。<html><% @ language="VBScript" %><head><title>文件操作</title></head><body><p>正在创建......</p><%Dim fso,txtFileSet fso=Server.CreateObject("Scripting.FileSystemObject")Set txtFile=fso.CreateTextFile("F:mywebflasher123aspframe55fileemp1.txt")txtFile.WriteLine("Hello!")txtFile.Close%><p>文件创建成功,并已写入内容!</p><p>正在复制文件.......</p><% 'fso.CopyFile "F:mywebflasher123aspframe55fileemp1.txt","F:mywebflasher123aspframe55fileemp2.txt" %><% fso.CopyFile Server.MapPath("temp1.txt"),Server.MapPath("temp2.txt") %><p>正在移动文件......</p><% fso.MoveFile Server.MapPath("temp2.txt"),Server.MapPath("temp3.txt") %><p>正在删除文件......</p><%fso.deleteFile Server.MapPath("temp1.txt")fso.DeleteFile Server.MapPath("temp3.txt")%><p>删除操作执行完毕!</p></body></html>
二、使用 File 对象的方法操作文件
1、File 对象的方法File 对象的方法
方
法
描述 / 表达式 / 注解
Cope
将指定的文件或文件夹从某位置复制到另一位置。
object.Copy destination[,overwrite]
参数object指定 File 或 Folder 对象的名称,destination 指定复制文件或文件夹的目标位置,不允许使用通配符,overwrite 是可选参数,取Boolean 值,若要覆盖现有文件或文件平,则将该参数设置为 True(默认),否则设置为 False。
Move
将指定的文件或文件夹从某位置移动到另一位置。
object.Move destination
参数object指定 File 或 Folder 对象的名称,destination 指定复制文件或文件夹的目标位置,不允许使用通配。
Delete
删除指定的文件或文件夹。
object.Delete force
参数object指定File 或 Folder 对象的名称。force 是可选参数,取 Boolean 值,如果要删除的文件或文件夹的属性设置为只读属性,则该值为 True,否遇为 False(默认)。
注:在使用文件对象的方法来操作文件之前,应通过 FileSystemObject 对象的 GetFile 方法来返回与指定路径中某文件相应的 File 对象。语法格式如下:
object.GetFile(filespec)
object 是FileSystemObject 对象的名称。filespec 指定文件的路径(绝对路径或相对路径)。
2、实例2(4/file.asp):本例说明如何使用 File 对象的方法执行文件的复制、移动和删除操作。<%dim fso,txtFile,afileSet fso=Server.CreateObject("Scripting.FileSystemObject")'创建一个文件,并复制、移动和删除使用Set txtFile=fso.CreateTextFile(Server.MapPath("temt1.txt"))txtFile.WriteLine("Hello!")txtFile.CloseSet afile=fso.GetFile(Server.MapPath("temt1.txt"))'复制文件afile.Copy (Server.MapPath("temt2.txt")),true'移动文件afile.Move (Server.MapPath("temt3.txt"))'删除文件afile.Delete%><html><head><title>复制、移动和删除文件</title></head><body>
1、创建文件 temt1.txt ;<br>
2、打开 temt1.txt 文件;<br>
3、创建文件 temt1.txt 实例对象。<br>
4、复制 temt1.txt 文件,复制后的文件名为 temt2.txt;<br>
5、将文件temt1.txt 移至为文件 temt3.txt。文件temt1 由文件 text3.txt 替代了。<br>
6、将文件temt3.txt 删除。因为我们用GetFile 方法创建的是文件 temt1.txt 对象,而这时的 temt1.txt 已由文件 temt3.txt替代了。所以删除的是文件 temt3.txt。<br>
</body>
</html>
三、检查文件的存在性
可以使用 FileSystemObject 对象的 FileExists 方法检查一个文件是否存在。如果指定的文件存在,该方法将返回 True,否则返回 False 。语法格式如下:
object.FileExists(Filespec)
object 参数指定 FileSystemObject 对象的名称。filespec 指定一个文件名,表示要确定是否存在的文件,如果文件不在当前文件中,则必须提供完整路径名。
实例3:(4/fileExists.asp)本例使用 FileSystemObjec 对象的FileExists 方法来检查文件是否存在。<%dim fso,filespec'创建FileSystemObject对象实例Set fso=Server.CreateObject("Scripting.FileSystemObject")'创建一个文件,供复制、移动和删除使用filespec=Server.MapPath("temt2.txt")if (fso.FileExists(filespec)) thenResponse.write filespec & "存在"elseResponse.write filespec & "不存在"end if%>
四、获取文件和文件夹的特征
1、 使用 File 或 Folder 对象的下列属性来获取文件或文件夹的一些特征。如下表:属
性
描
述
Normal
设置或返回文件或文件夹的属性。它可是一个值或多个值的合理组合。如下表:
常
数
数值
描
述
Normal
0
普通文件,没有设置任何属性。
ReadOnly
1
只读文件,可读写。
Hidden
2
隐藏文件,可读写。
System
4
系统文件,可读写。
Volume
8
磁盘驱动卷标,只读。
Directory
16
文件夹或目录,只读。
Archive
32
上次备份后已更改的文件,只读。
Alias
64
链接或快捷方式,只读。
Compressed
128
压缩文件,只读。
DateCreated
返回指定的文件或文件夹的创建日期和时间。
DateLastAccessed
返回指定的文件或文件夹的上次访问日期和时间。
DateLastModified
返回指定的文件或文件夹的上次修改日期和时间。
Drive
返回指定的文件或文件夹所在的驱动器的驱动器号。
Name
返回指定的文件和文件夹的名称。
ParentFolder
返回指定的文件或文件夹的父文件夹。
Path
返回指定文件和文件夹驱动器的路径。
ShortName
返回按照早期8.3文件命名约定转换的短文件名。
ShortPath
返回按照早期8.3命名约定转换的短路径名。
Size
返回文件或文件夹的字节数。对于文件,该属性返回指定文件的字节数,对于文件夹,该属性返回该文件夹中所有文件和子文件夹的字节数。
type
返回文件或文件夹的类型信息。
2、实例4(4/file1.asp):创建一个文本文件并查看其属性。代码如下:<html><% @ language="vbscript" %><head><title>查看文件属性</title></head><body><%dim fso,txtFile,fSet fso=Server.CreateObject("Scripting.FileSystemObject")Set txtFile=fso.CreateTextFile(Server.mapPath("hello.txt"))txtFile.WriteLine("hello!")TxtFile.Close'返回一个文件对象set f=fso.GetFile(Server.mapPath("hello.txt"))%><table align="center" border="1"><caption><b>文件属性列表</b></caption><tr><th>属性</th><th>值</th></tr><tr><td>文件名</td><td><%=f.Name %></td></tr><tr><td>路径</td><td><%=f.path %></td></tr><tr><td>驱动器</td><td><%=f.Drive %></td></tr><tr><td>字节数</td><td><%=f.size %></td></tr><tr><td>类型</td><td><%=f.Attributes %></td></tr><tr><td>创建于</td><td><%=f.DateCreated %></td></tr><tr><td>最后一次访问于</td><td><%=f.DateLastAccessed %></td></tr><tr><td>最后一次修改于</td><td><%=f.DateLastModified %></td></tr></table></body></htmL>
查看全套"ASP入门基础"教程>>>>>