«
ASP入门基础教程-文件操作

时间:2008-5-31    作者:Deri    分类: 分享


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