• FileSystemObject详解


    FSOFileSystemObject 或 Scripting.FileSystemObject 的缩写,为 IIS 内置组件,用于操作磁盘、文件夹或文本文件。FSO 的对象、方法和属性非常的多,这里用示例的方式列出常用的,注意:《VBScript 语言参考》或《JScript 语言参考》中的:《FileSystemObject 用户指南》和《Scripting 运行时库参考》便是微软给出的 FileSystemObject 完整参考。

    FSO 不能操作二进制文件,要操作二进制文件,使用:ADODB.Stream

    创建文件
    set fso = server.CreateObject("Scripting.FileSystemObject")
    set f = fso.CreateTextFile("C: est.txt", true) '第二个参数表示目标文件存在时是否覆盖
    f.Write("写入内容")
    f.WriteLine("写入内容并换行")
    f.WriteBlankLines(3) '写入三个空白行(相当于在文本编辑器中按三次回车)
    f.Close()
    set f = nothing
    set fso = nothing

    打开并读文件
    set fso = server.CreateObject("Scripting.FileSystemObject")
    set f = fso.OpenTextFile("C: est.txt", 1, false) '第二个参数 1 表示只读打开,第三个参数表示目标文件不存在时是否创建
    f.Skip(3) '将当前位置向后移三个字符
    f.SkipLine() '将当前位置移动到下一行的第一个字符,注意:无参数
    response.Write f.Read(3) '从当前位置向后读取三个字符,并将当前位置向后移三个字符
    response.Write f.ReadLine() '从当前位置向后读取直到遇到换行符(不读取换行符),并将当前位置移动到下一行的第一个字符,注意:无参数
    response.Write f.ReadAll() '从当前位置向后读取,直到文件结束,并将当前位置移动到文件的最后
    if f.atEndOfLine then
       response.Write("一行的结尾!")
    end if
    if f.atEndOfStream then
        response.Write("文件的结尾!")
    end if
    f.Close()
    set f = nothing
    set fso = nothing

    打开并写文件
    set fso = server.CreateObject("Scripting.FileSystemObject")
    set f = fso.OpenTextFile("C: est.txt", 2, false) '第二个参数 2 表示重写,如果是 8 表示追加
    f.Write("写入内容")
    f.WriteLine("写入内容并换行")
    f.WriteBlankLines(3) '写入三个空白行(相当于在文本编辑器中按三次回车)
    f.Close()
    set f = nothing
    set fso = nothing

    判断文件是否存在
    set fso = server.CreateObject("Scripting.FileSystemObject")
    if fso.FileExists("C: est.txt") then
        response.Write("目标文件存在")
    else
        response.Write("目标文件不存在")
    end if
    set fso = nothing

    移动文件
    set fso = server.CreateObject("Scripting.FileSystemObject")
    call fso.MoveFile("C: est.txt", "D: est111.txt") '两个参数的文件名部分可以不同
    set fso = nothing

    复制文件
    set fso = server.CreateObject("Scripting.FileSystemObject")
    call fso.CopyFile("C: est.txt", "D: est111.txt") '两个参数的文件名部分可以不同
    set fso = nothing

    删除文件
    set fso = server.CreateObject("Scripting.FileSystemObject")
    fso.DeleteFile("C: est.txt")
    set fso = nothing

    创建文件夹
    set fso = server.CreateObject("Scripting.FileSystemObject")
    fso.CreateFolder("C: est") '目标文件夹的父文件夹必须存在
    set fso = nothing

    判断文件夹是否存在
    set fso = server.CreateObject("Scripting.FileSystemObject")
    if fso.FolderExists("C:Windows") then
        response.Write("目标文件夹存在")
    else
        response.Write("目标文件夹不存在")
    end if
    set fso = nothing

    删除文件夹
    set fso = server.CreateObject("Scripting.FileSystemObject")
    fso.DeleteFolder("C: est") '文件夹不必为空
    set fso = nothing

    检测驱动器C盘是否存在
    Set fso = Server.CreateObject("Scripting.FileSystemObject")
    fso.DriveExists("c:")

    获取文件路径的驱动器名
    Set fso=Server.CreateObject("Scripting.FileSystemObject")
    p=fso.GetDriveName(Server.MapPath("aqa33"))
    Response.Write("驱动器名称是:" & p)
    set fs=nothing

    取得某个指定的路径的父文件夹的名称
    Set fso=Server.CreateObject("Scripting.FileSystemObject")
    p=fso.GetParentFolderName(Server.MapPath("aqa331.asp"))
    Response.Write("父文件夹名称是:" & p)
    set fs=nothing

    取得指定路径中的最后一个成分的文件扩展名 
    Set fs=Server.CreateObject("Scripting.FileSystemObject")
    Response.Write(fs.GetExtensionName(Server.MapPath("aqa33.asxd")))
    set fs=nothing

    取得指定路径中的最后一个成分的文件名 
    Set fs=Server.CreateObject("Scripting.FileSystemObject")
    Response.Write(fs.GetFileName(Server.MapPath("aqa33.asxd")))
    set fs=nothing

    返回在指定的路径中文件或者文件夹的基本名称

    Set fso=Server.CreateObject("Scripting.FileSystemObject")
    Response.Write(fso.GetBaseName("c:windowscursorsabc.cur"))
    Response.Write("<br />")
    Response.Write(fso.GetBaseName("c:windowscursors"))
    Response.Write("<br />")
    Response.Write(fso.GetBaseName("c:windows"))
    set fso=nothing

    ##############阁下如果是抄袭,爬取文章作恶或误导他人的开发者,请阅读中国现行法律的相关处罚条例再动手,转载之前最好先验证#############
  • 相关阅读:
    rabbitmq在ios中实战采坑
    网络七层架构一句话简述
    HystrixCommand实战
    前端SEO技巧
    前端面试-难点问题2-java和javascript的区别
    前端面试题--难点问题
    [微信营销企划之路]003.Access forbidden!
    [Python进阶]001.不定参数
    [安卓基础]011存储数据(中)——sqlite语法介绍
    [JavaWeb基础] 015.Struts2 表单验证框架
  • 原文地址:https://www.cnblogs.com/chuyuan/p/4829415.html
Copyright © 2020-2023  润新知