文件操作主要包括复制、移动和删除文件,检查文件是否存在以及获取文件的属性。使用FileSystemObject对象可以完成这些操作。
1.复制、移动和删除文件
使用FileSystemObject对象复制、移动和删除文件时,将用到该对象的下列方法。
(1)Copy File方法:将一个或多个文件复制到其他位置上。
语法格式:
Object.CopyFile source,destination,overwrite
其中参数详见表5-4。
说明:在使用CopyFile方法时,无论将overwrite参数设置为何值,只要设置destination为只读属性,CopyFile操作就无法完成,只能在source参数的路径最后一个组成部分中使用通配符。
如果source使用通配符,但并没有相匹配的文件时,则会出现错误。CopyFile方法在遇到出现的第一个错误时停止。该方法不会撤销错误发生前所做的任何更改。
如果source包含通配符或destination以路径分隔符()结束,则假定destination是现有文件夹,复制匹配文件到该文件夹。否则,假定destination是要创建的文件。在任何一种情况下,复制单个文件时,会出现以下3种情况:
●如果destination不存在,则复制source。这是通常会发生的情况。
●如果destination是已经存在的文件,当overwrite为False时会出现错误。否则,复制source覆盖现有文件。
●如果destination是目录,则会出现错误。
(2)MoveFile方法:将一个或多个文件从某位置移动到另一位置。
语法格式:
Object.MoveFilesource,destination
其中参数详见表5-4e
说明:如果source包含通配符或destination以路径分隔符(\)结束。则假定destination是现有文件夹,将匹配文件移动到该文件夹中。否则,假定destination是要创建的目标文件。在任何一种情况下,移动单个文件时,可能出现以下3种情况:
●如果destination不存在,则进行文件移动。这是通常会发生的情况。
●如果destination是已经存在的文件,则会出现错误。
●如果destination是目录,则会出现错误。
如果在source使用通配符但没有匹配文件时,将会出现错误。MoveFile方法在遇到出现的第一个错误时停止。该方法不会撤销错误发生前所做的任何更改。
(3)DeleteFile方法:删除指定的文件。
语法格式:
Object.DeleteFilepath,force
其中参数详见表5-4。
说明:如果没有找到匹配文件,则会出现错误。DeleteFile方法在遇到出现的第一个错误时停止。该方法不会撤销错误发生前所做的任何更改。
【例5.6】创建一个文本文件并写入内容,然后执行复制、移动和删除操作,运行结果如图5-5所示。
图5-5 文件操作示例
文件命名为5-6.asp的代码如下:
〈HTML〉
〈% @ LANGUAGE =″VBScript″%〉
〈HEAD〉
〈TITLE〉文件操作示例〈/TITLE〉
〈/HEAD〉
〈BODY〉
〈P〉正在创建文件-〉-〉-〉-〉-〉-〉-〉-〉-〉〈/P〉
〈%(www.xing528.com)
Dim fso,txtFile
Set fso=Server.CreateObject(″Scripting.FileSystemObject″)
set txtFile=fso.CreateTextFile(″e:\templ.txt″)
txtFile.WriteLine(″Hello!″)
txtFile.Close
%〉
〈P〉文件创建成功,并已写入内容!〈/P〉
〈P〉正在复制文件-〉-〉-〉-〉-〉-〉-〉-〉-〉〈/P〉
〈%fso.CopyFile ″e:\templ.txt″,″e:temp2.txt″%〉
〈P〉正在移动文件-〉-〉-〉-〉-〉-〉-〉-〉-〉〈/P〉
〈%fso.MoveFile ″e:\temp2.txt″,″e:\temp3.txt″%〉
〈P〉正在删除文件-〉-〉-〉-〉-〉-〉-〉-〉-〉〈/P〉
〈%
fso.DeleteFile ″e:\templ .txt″
fso.DeleteFile ″e:\temp3.txt″
%〉
〈p〉删除操作执行完毕!〈/P〉
〈/BODY〉
〈/HTML〉
2.检查文件的存在性
FileSystemObject对象专门有一个方法检查一个文件是否存在,那就是FileExists方法。如果指定的文件存在,该方法将返回True,否则返回False。
语法格式:
Object.FileExists(Path)
其中参数详见表5-4。
例如,下面的代码是使用File Exists方法来检查文件是否存在的。
〈%
Dimfso,files
′创建FileSystemObject对象实例
Set fso=Server.CreateObject(″Scripting.FileSystemObject″)
Files=″D:\asp\test.txt″
Iffso.FileExists(files)Then
Response.Write files&″存在。″
Else
Response.Write files&″不存在。
End If
%〉
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。