广

ASP编程

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    文件、目录,文本文件等多种操作类

    2018-05-16 07:55:13 次阅读 稿源:互联网
    零七广告
    一个使用fso的class,前面的文章也有提到。这里有比较多的一些实例。
    <%
    Dim MyFileFolder
    Set MyFileFolder = New FileFolderCls
    ''Response.Write MyFileFolder.MoveAFile("f:/123/4561.exe","f:/123/4562.txt")
    ''Response.Write MyFileFolder.MoveAFolder("f:/456","f:/ditg/456")
    ''Response.Write MyFileFolder.ShowFileSystemType("i:/")
    ''Response.Write MyFileFolder.CopyAFile("f:/123/4562.txt","f:/123/4563.txt")
    ''!!!!
    ''Response.Write MyFileFolder.CopyAFolder("f:/123/","f:/789/")
    ''Response.Write MyFileFolder.ShowFolderList("f:/ditg")
    ''Response.Write MyFileFolder.ShowFileList("f:/123/123")
    ''Response.Write MyFileFolder.DeleteAFile("f:/123/4562.txt")
    ''Response.Write MyFileFolder.DeleteAFolder("f:/456/")
    ''Response.Write MyFileFolder.CreateFolderDemo("f:/147/")
    ''Response.Write MyFileFolder.GetFileSize("f:/123/4563.txt")
    ''Response.Write MyFileFolder.GetFolderSize("f:/123/123.txt")
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",1)&"<br>"
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",2)&"<br>"
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",3)&"<br>"
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",4)&"<br>"
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",5)&"<br>"
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",6)&"<br>"
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",7)&"<br>"
    ''Response.Write MyFileFolder.ShowFileAccessInfo("f:/123/123.txt",8)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",1)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",2)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",3)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",4)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",5)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",6)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",7)&"<br>"
    ''Response.Write MyFileFolder.ShowFolderAccessInfo("f:/123/",8)&"<br>"
    ''Response.Write MyFileFolder.WriteTxtFile("f:/123/cexo.txt","",1)&"<br>"
    ''Response.Write MyFileFolder.WriteTxtFile("f:/123/cexo.txt","cexowxfdw",1)&"<br>"
    ''Response.Write MyFileFolder.WriteTxtFile("f:/123/cexo.txt",Chr(13)&Chr(10)
    &"cexowxfdw",2)&"<br>"
    ''Response.Write MyFileFolder.ReadTxtFile("f:/123/cexo.txt")&"<br>"
    Response.Write MyFileFolder.DisplayLevelDepth("F:/ditg/ditg/bumen/images")&"<br>"
    Class FileFolderCls
    Public fso
    Private Sub Class_Initialize()
    Set fso = CreateObject("Scripting.FileSystemObject")
    End Sub
    Private Sub Class_Terminate()
    Set fso = Nothing
    End Sub
    ''//==================================文件操作==================================
    ''取文件大小
    Function GetFileSize(FileName)
    ''//功能:取文件大小
    ''//形参:文件名
    ''//返回值:成功为文件大小,失败为-1
    ''//
    Dim f
    If ReportFileStatus(FileName) = 1 Then
    Set f = fso.Getfile(FileName)
    GetFileSize = f.Size
    Else
    GetFileSize = -1
    End if
    End Function
    ''文件删除
    Function DeleteAFile(filespec)
    ''//功能:文件删除
    ''//形参:文件名
    ''//返回值:成功为1,失败为-1
    ''//
    If ReportFileStatus(filespec) = 1 Then
    fso.DeleteFile(filespec)
    DeleteAFile = 1
    Else
    DeleteAFile = -1
    End if
    End Function
    ''显示文件列表
    Function ShowFileList(folderspec)
    ''//功能:目录存在时显示此目录下的所有文件
    ''//形参:目录名
    ''//返回值:成功为文件列表,失败为-1
    ''//
    Dim f, f1, fc, s
    If ReportFolderStatus(folderspec) = 1 Then
    Set f = fso.GetFolder(folderspec)
    Set fc = f.Files
    For Each f1 in fc
    s = s & f1.name
    s = s & "|"
    Next
    ShowFileList = s
    Else
    ShowFileList = -1
    End if
    End Function
    ''!!!
    ''文件复制
    Function CopyAFile(SourceFile,DestinationFile)
    ''//功能:源文件存在时,才能对文件进行复制,目的文件无影响
    ''//形参:源文件,目的文件
    ''//返回值:成功为1,失败为-1
    ''//
    Dim MyFile
    If ReportFileStatus(SourceFile) = 1 Then
    Set MyFile = fso.GetFile(SourceFile)
    MyFile.Copy (DestinationFile)
    CopyAFile = 1
    Else
    CopyAFile = -1
    End if
    End Function
    ''文件移动
    ''Response.Write MoveAFile("f:/123/4561.exe","f:/123/4562.txt")
    Function MoveAFile(SourceFile,DestinationFile)
    ''//功能:源文件存在时目的文件不存在时才能对文件进行移动
    ''//形参:源文件,目的文件
    ''//返回值:成功为1,失败为-1
    ''//
    If ReportFileStatus(SourceFile)=1 And ReportFileStatus(DestinationFileORPath) =
    -1 Then
    fso.MoveFile SourceFile,DestinationFileORPath
    MoveAFile = 1
    Else
    MoveAFile = -1
    End if
    End Function
    ''文件是否存在?
    ''Response.Write ReportFileStatus("G: oft/delphi/my_pro/代码库.exe")
    Function ReportFileStatus(FileName)
    ''//功能:判断文件是否存在
    ''//形参:文件名
    ''//返回值:成功为1,失败为-1
    ''//
    Dim msg
    msg = -1
    If (fso.FileExists(FileName)) Then
    msg = 1
    Else
    msg = -1
    End If
    ReportFileStatus = msg
    End Function
    ''文件创建日期
    ''Response.Write ShowDateCreated("G: oft/delphi/my_pro/代码库.exe")
    ''Response.Write ShowDateCreated("G: oft/delphi/my_pro/复件 代码库.exe")
    Function ShowDateCreated(filespec)
    ''//功能:文件创建日期
    ''//形参:文件名
    ''//返回值:成功:文件创建日期,失败:-1
    ''//
    Dim f
    If ReportFileStatus(filespec) = 1 Then
    Set f = fso.GetFile(filespec)
    ShowDateCreated = f.DateCreated
    Else
    ShowDateCreated = -1
    End if
    End Function
    ''文件属性
    ''Response.Write GetAttributes("G: oft/delphi/my_pro/复件 代码库.exe")
    Function GetAttributes(FileName)
    ''//功能:显示文件属性
    ''//形参:文件名
    ''//返回值:成功:文件属性,失败:-1
    ''//
    Dim f,Str
    If ReportFileStatus(FileName) = 1 Then
    Set f = fso.GetFile(FileName)
    Select Case f.attributes
    Case 0 Str="普通文件。没有设置任何属性。 "
    Case 1 Str="只读文件。可读写。 "
    Case 2 Str="隐藏文件。可读写。 "
    Case 4 Str="系统文件。可读写。 "
    Case 16 Str="文件夹或目录。只读。 "
    Case 32 Str="上次备份后已更改的文件。可读写。 "
    Case 1024 Str="链接或快捷方式。只读。 "
    Case 2048 Str=" 压缩文件。只读。"
    End Select
    GetAttributes = Str
    Else
    GetAttributes = -1
    End if
    End Function
    ''最后一次访问/最后一次修改时间
    ''Response.Write ShowFileAccessInfo("G: oft/delphi/my_pro/复件 代码库.exe")
    Function ShowFileAccessInfo(FileName,InfoType)
    ''//功能:显示文件创建时信息
    ''//形参:文件名,信息类别
    ''// 1 -----创建时间
    ''// 2 -----上次访问时间
    ''// 3 -----上次修改时间
    ''// 4 -----文件路径
    ''// 5 -----文件名称
    ''// 6 -----文件类型
    ''// 7 -----文件大小
    ''// 8 -----父目录
    ''// 9 -----根目录
    ''//返回值:成功为文件创建时信息,失败:-1
    ''//
    Dim f, s
    If ReportFileStatus(FileName) = 1 then
    Set f = fso.GetFile(FileName)
    Select Case InfoType
    Case 1 s = f.DateCreated ''// 1 -----
    创建时间
    Case 2 s = f.DateLastAccessed ''// 2 -----上次访问
    时间
    Case 3 s = f.DateLastModified ''// 3 -----上次修改
    时间
    Case 4 s = f.Path ''// 4
    -----文件路径
    Case 5 s = f.Name ''// 5
    -----文件名称
    Case 6 s = f.Type ''// 6
    -----文件类型
    Case 7 s = f.Size ''// 7
    -----文件大小
    Case 8 s = f.ParentFolder ''// 8 -----
    父目录
    Case 9 s = f.RootFolder ''// 8 -----
    根目录
    End Select
    ShowFileAccessInfo = s
    ELse
    ShowFileAccessInfo = -1
    End if
    End Function
    ''写文本文件
    Function WriteTxtFile(FileName,TextStr,WriteORAppendType)
    Const ForReading = 1, ForWriting = 2 , ForAppending = 8
    Dim f, m
    Select Case WriteORAppendType
    Case 1: ''文件进行写操作
    Set f = fso.OpenTextFile(FileName, ForWriting, True)
    f.Write TextStr
    f.Close
    If ReportFileStatus(FileName) = 1 then
    WriteTxtFile = 1
    Else
    WriteTxtFile = -1
    End if
    Case 2: ''文件末尾进行写操作
    If ReportFileStatus(FileName) = 1 then
    Set f = fso.OpenTextFile(FileName, ForAppending)
    f.Write TextStr
    f.Close
    WriteTxtFile = 1
    Else
    WriteTxtFile = -1
    End if
    End Select
    End Function
    ''读文本文件
    Function ReadTxtFile(FileName)
    Const ForReading = 1, ForWriting = 2
    Dim f, m
    If ReportFileStatus(FileName) = 1 then
    Set f = fso.OpenTextFile(FileName, ForReading)
    m = f.ReadLine
    ''m = f.ReadAll
    ''f.SkipLine
    ReadTxtFile = m
    f.Close
    Else
    ReadTxtFile = -1
    End if
    End Function
    ''建立文本文件
    ''//==================================目录操作==================================
    ''取目录大小
    Function GetFolderSize(FolderName)
    ''//功能:取目录大小
    ''//形参:目录名
    ''//返回值:成功为目录大小,失败为-1
    ''//
    Dim f
    If ReportFolderStatus(FolderName) = 1 Then
    Set f = fso.GetFolder(FolderName)
    GetFolderSize = f.Size
    Else
    GetFolderSize = -1
    End if
    End Function
    ''创建的文件夹
    Function CreateFolderDemo(FolderName)
    ''//功能:创建的文件夹
    ''//形参:目录名
    ''//返回值:成功为1,失败为-1
    ''//
    Dim f
    If ReportFolderStatus(Folderspec) = 1 Then
    CreateFolderDemo = -1
    Else
    Set f = fso.CreateFolder(FolderName)
    CreateFolderDemo = 1
    End if
    End Function
    ''!!!
    ''目录删除
    Function DeleteAFolder(Folderspec)
    ''//功能:目录删除
    ''//形参:目录名
    ''//返回值:成功为1,失败为-1
    ''//
    Response.write Folderspec
    If ReportFolderStatus(Folderspec) = 1 Then
    fso.DeleteFolder (Folderspec)
    DeleteAFolder = 1
    Else
    DeleteAFolder = -1
    End if
    End Function
    ''显示目录列表
    Function ShowFolderList(folderspec)
    ''//功能:目录存在时显示此目录下的所有子目录
    ''//形参:目录名
    ''//返回值:成功为子目录列表,失败为-1
    ''//
    Dim f, f1, fc, s
    If ReportFolderStatus(folderspec) = 1 Then
    Set f = fso.GetFolder(folderspec)
    Set fc = f.SubFolders
    For Each f1 in fc
    s = s & f1.name
    s = s & "|"
    Next
    ShowFolderList = s
    Else
    ShowFolderList = -1
    End if
    End Function
    ''!!!!
    ''目录复制
    Function CopyAFolder(SourceFolder,DestinationFolder)
    ''//功能:源目录存在时,才能对目录进行复制,目的目录无影响
    ''//形参:源目录,目的目录
    ''//返回值:成功为1,失败为-1
    ''//
    ''Dim MyFolder
    ''If ReportFolderStatus(SourceFolder) = 1 and ReportFolderStatus
    (DestinationFolder) = -1 Then
    ''Set MyFolder = fso.GetFolder(SourceFolder)
    fso.CopyFolder SourceFolder,DestinationFolder
    CopyAFolder = 1
    ''Else
    CopyAFolder = -1
    ''End if
    End Function
    ''目录进行移动
    Function MoveAFolder(SourcePath,DestinationPath)
    ''//功能:源目录存在时目的目录不存在时才能对目录进行移动
    ''//形参:源目录,目的目录
    ''//返回值:成功为1,失败为-1
    ''//
    If ReportFolderStatus(SourcePath)=1 And ReportFolderStatus(DestinationPath)=0
    Then
    fso.MoveFolder SourcePath, DestinationPath
    MoveAFolder = 1
    Else
    MoveAFolder = -1
    End if
    End Function
    ''判断目录是否存在
    ''Response.Write ReportFolderStatus("G: oft/delphi/my_pro/")
    Function ReportFolderStatus(fldr)
    ''//功能:判断目录是否存在
    ''//形参:目录
    ''//返回值:成功为1,失败为-1
    ''//
    Dim msg
    msg = -1
    If (fso.FolderExists(fldr)) Then
    msg = 1
    Else
    msg = -1
    End If
    ReportFolderStatus = msg
    End Function
    ''目录创建时信息
    Function ShowFolderAccessInfo(FolderName,InfoType)
    ''//功能:显示目录创建时信息
    ''//形参:目录名,信息类别
    ''// 1 -----创建时间
    ''// 2 -----上次访问时间
    ''// 3 -----上次修改时间
    ''// 4 -----目录路径
    ''// 5 -----目录名称
    ''// 6 -----目录类型
    ''// 7 -----目录大小
    ''// 8 -----父目录
    ''// 9 -----根目录
    ''//返回值:成功为目录创建时信息,失败:-1
    ''//
    Dim f, s
    If ReportFolderStatus(FolderName) = 1 then
    Set f = fso.GetFolder(FolderName)
    Select Case InfoType
    Case 1 s = f.DateCreated ''// 1 -----
    创建时间
    Case 2 s = f.DateLastAccessed ''// 2 -----上次访问
    时间
    Case 3 s = f.DateLastModified ''// 3 -----上次修改
    时间
    Case 4 s = f.Path ''// 4
    -----文件路径
    Case 5 s = f.Name ''// 5
    -----文件名称
    Case 6 s = f.Type ''// 6
    -----文件类型
    Case 7 s = f.Size ''// 7
    -----文件大小
    Case 8 s = f.ParentFolder ''// 8 -----
    父目录
    Case 9 s = f.RootFolder ''// 9 -----
    根目录
    End Select
    ShowFolderAccessInfo = s
    ELse
    ShowFolderAccessInfo = -1
    End if
    End Function
    Function DisplayLevelDepth(pathspec)
    Dim f, n ,Path
    Set f = fso.GetFolder(pathspec)
    If f.IsRootFolder Then
    DisplayLevelDepth ="指定的文件夹是根文件夹。"&RootFolder
    Else
    Do Until f.IsRootFolder
    Path = Path & f.Name &"<br>"
    Set f = f.ParentFolder
    n = n + 1
    Loop
    DisplayLevelDepth ="指定的文件夹是嵌套级为 " & n & " 的文件夹。<br>"&
    Path
    End If
    End Function
    ''//==================================磁盘操作==================================
    ''驱动器是否存在?
    ''Response.Write ReportDriveStatus("C:/")
    Function ReportDriveStatus(drv)
    ''//功能:判断磁盘是否存在
    ''//形参:磁盘
    ''//返回值:成功为1,失败为-1
    ''//
    Dim msg
    msg = -1
    If fso.DriveExists(drv) Then
    msg = 1
    Else
    msg = -1
    End If
    ReportDriveStatus = msg
    End Function
    ''--------可用的返回类型包括 FAT、NTFS 和 CDFS。
    ''Response.Write ShowFileSystemType("C:/")
    Function ShowFileSystemType(drvspec)
    ''//功能:磁盘类型
    ''//形参:磁盘名
    ''//返回值:成功为类型:FAT、NTFS 和 CDFS,失败:-1
    ''//
    Dim d
    If ReportDriveStatus(drvspec) = 1 Then
    Set d = fso. GetDrive(drvspec)
    ShowFileSystemType = d.FileSystem
    ELse
    ShowFileSystemType = -1
    End if
    End Function
    End Class
    %> 

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告