• FSO 文件操作


    就是利用FSO显示某个目录下的文件或文件夹时,如何进行排序。比如:按照文件大小排序、文件修改日期排序,或者是按照文件名排序等等。

    '假设这是你的文件夹
    folderPath = "d:\test"

    set fso = server.CreateObject("Scripting.FileSystemObject")

    set myfolder = fso.GetFolder

    for each objFile in myfolder.Files
    filename = objFile.Name
    ....
    next

    'file 对象有如下属性:
    Attributes 属性 | DateCreated 属性 | DateLastAccessed 属性 | DateLastModified 属性 | Drive 属性 | Name 属性 | ParentFolder 属性 | Path 属性 | ShortName 属性 | ShortPath 属性 | Size 属性 | Type 属性

    对文件进行处理 对文件进行处理

    这个部分是介绍怎样进行文件处理的:拷贝,移动以及删除文件;以及怎样检测一个文件是否存在和接收一个文件的有关属性。

     

    拷贝、移动以及删除文件

    有不止一种方法来对文件进行拷贝、移动以及删除工作。你可以利用FileSystemObject对象的方法或者File对象的方法,其中FileSystemObject对象的方法更具有些变通性,因为你会不局限于一个单独的文件上。

     

    下面是FileSystemObject对象对文件操作的一些方法:

    ■CopyFile source, destination,[Overwrite]。这个方法将文件进行复制,你可以使用 source参数统配符来在一个时刻进行多个文件的复制。OverWrite参数将在目的文件已经存在的情况下进行覆盖操作。

    ■MoveFile source, destination.这个方法对文件进行移动操作,同样你可以使用统配 符来移动多个文件,不过如果目的文件已经存在,则会报错而不允许覆盖。

    ■DeleteFile FileSpecifier。这个方法删除指定文件,同样还是可以利用统配符来进 行多文件的删除。如果没有符合统配符的文件,将会报错。

     

    在你使用这些方法之前,首先当然还是创建一个FileSystemObject对象的事例。下面就是一个完整的使用示例:

     

    <%

    ‘创建一个FileSystemObject的事例

    Set MyFileObject=Server.CreateObject(“Scripting.FileSystemObject”)

    ‘创建一个要进行操作的文件

    Set MyFile=MyFileObject.CreateTextFile(“c:\test.txt”)

    MyFile.WriteLine(“Hello”)

    MyFile.Close

    ‘复制文件操作

    MyFileObject.CopyFile “c:\test.txt” “c:\test2.txt”

    ‘移动文件操作

    MyFileObject.MoveFile “c:\test.txt” “c:\test3.txt”

    ‘删除这些文件

    MyFileObject.DeleteFile “c:\test.txt”

    eObject.DeleteFile “c:\test3.txt”

    %>

     

    除了使用FileSystemObject对象的方法来进行这种操作以外,你还可以使用FILE对象。下面是File对象相关操作的同等方法:

    ■Copy newcopy,[Overwrite]。这种方法给当前文件创建一个拷贝,当可选的 OverWrite参数为TRUE时,如果存在同名的目的文件,则进行覆盖。

    ■Move newcopy.这个方法用来移动当前文件,同时当前文件跟随到新的名称。

    ■Delete。删除当前文件。

     

    在你使用这些方法之前,你必须创建File对象的一个事例,这样的事例创建是在FileSystemObject对象中使用GetFile()方法来完成的,下面这个脚本就是利用File对象进行各种操作的一个示例:

     

    <%

    ‘创建一个FileSystemObject对象的事例

    Set MyFileObject=Server.CreateObject(“Scripting.FileSystemObject”)

    ‘创建一个要进行操作的文件

    Set MyFile=MyFileObject.CreateTextFile(“c:\test.txt”)

    MyFile.WriteLine(“Hello”)

    MyFile.Close

    ‘创建一个File对象的事例

    Set afile=MyFileObject.GetFile(“c:\test.txt”)

    ‘复制文件

    Afile.copy “c:\test2.txt”

    ‘移动文件

    Afile.Move “c:\test3.txt”

    ‘删除文件

    afile.Delete

    %>

     

    检测文件是否存在

    如果需要了解一个特定的文件是否存在,你需要FileSystemObject对象的FileExists()方法,只需要传递其物理地址就可以从返回值是True和False来判断其是否存在,下面就是这样一个例子:

     

    <HTML>

    <HEAD><TITLE>文件是否存在示例</TITLE></HEAD>

    <BODY>

    <%

    MySelf=Request.ServerVariables(“PATH_TRANSLATED”)

    ‘创建一个FileSystemObject对象事例

    Set MyFileObject=Server.CreateObject(“Scripting.FileSystemObject”)

    IF MyFileObject.FileExists(“MySelf”)

    Response.write(“存在这个文件”)

    Else

    Response.write(“不存在这个文件”)

    END IF

    %>

    </BODY>

    </HTML>

     

    这个脚本就是检查是否存在一个指定的文件,在本例中,显然是存在的,因为MySelf就是当前这个文件(这里面使用了ServerVariables变量PATH_TRANSLATED来获取当前文件的物理地址),当前这个文件无论如何肯定是存在的,因此返回值肯定是TRUE,那么显示为“存在这个文件”。

     

    接受文件属性

    当处理文件时,有些属性是需要了解的,下面是File对象的属性列表:

    ■Attributes.这个属性类似于Dos命令的Attrib,显示当前文件的系统属性。例如Read-Only,Hidden,System等等

    ■DateCreated.这个属性返回文件创建的时间和日期。

    ■DateLastAccessed.这个属性返回该文件上一次被使用的日期和时间

    ■DateLastModified.这个属性返回该文件上一次被修改的日期和时间

    ■Drive. 这个属性返回值为该文件所在的驱动器

    ■Name.这个属性返回该文件文件名

    ■ParentFolder.这个属性返回值为该文件所处的文件夹

    ■Path.返回该文件的全路径

    ■Size.返回该文件的字节数

    ■Type.返回该文件类型,例如Text文本,Asp文件,或者网络资源(HTML)

     

    在使用这些属性之前,依然首先需要创建一个File对象的事例。下一个例子就是显示c:\test.txt的各项属性。

     

    <HTML>

    <HEAD><TITLE>迈至科网络ASP教程之文件属性示例</TITLE></HEAD>

    <BODY>

    <%

    ‘创建一个FileSystemObject对象的事例

    Set MyFileObject=Server.CreateObject(“Scripting.FileSystemObject”)

    ‘创建一个File对象的事例

    Set Myfile=MyFileObject.GetFile(“c:\test.txt”)

    %>

    <Br>名称:<%=Myfile.Name %>

    <Br>路径:<%=Myfile.Path %>

    <Br>驱动器:<%=Myfile.Drive %>

    <Br>大小:<%=Myfile.size %>

    <Br>类型:<%=Myfile.type %>

    <Br>属性:<%=Myfile.Attributes %>

    <Br>创建日期:<%=Myfile.DateCreated %>

    <Br>上次进入日期:<%=Myfile.LastAccessed %>

    <Br>上次修改日期:<%=Myfile.LassModified %>

    </BODY>

    </HTML>

     

    那么显示结果如图19.2所示。

    图19.2 文件属性

     

     

     

     

     

    Attributes属性需要解释,它的返回值是对应于下表的数字:

    Attribute

    Normal

    0

    Read-Only

    1

    Hidden

    2

    System

    4

    Volume

    8

    Directory

    16

    Archive

    32

    Alias

    64

    Compressed

    128

    那么,由于这里面属性为Archive和Hidden,所以结合起来就是2(Hidden)+32(Archieve)=34,从数学上可以理解,每一个整数对应这样的2的幂次的累加和肯定是唯一的,这些属性还可以进行设置,例如,使c:\test.txt变成具有Archieve,Read-Only两种属性 ,那么用下面这个脚本

     

    <%

    ‘创建一个FileSystemObject对象的事例

    Set MyFileObject=Server.CreateObject(“Scripting.FileSystemObject”)

    ‘创建一个File对象的事例

    Set Myfile=MyFileObject.GetFile(“c:\test.txt”)

    ‘进行属性设置

    MyFile.attributes=31

    %>

     

  • 相关阅读:
    Makefile 文件格式
    带你深入理解传递參数
    LeetCode OJ Basic Calculator II
    emacs 为什么找不到运行程序?
    iOS Dev (51)加急审核
    POJ 1159 Palindrome
    9.9递归和动态规划(十二)——小鸡吃米
    c++操作当前窗体句柄
    [Python]计算闰年时候出现的and和or优先级的问题以及短路逻辑
    静态代理模式
  • 原文地址:https://www.cnblogs.com/gfwei/p/542866.html
Copyright © 2020-2023  润新知