`
isiqi
  • 浏览: 16467964 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

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

阅读更多
<%
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
%>
分享到:
评论

相关推荐

    FileEdit 自己写的文本文件操作类

    "FileEdit"是一个自定义的文本文件操作类,它扩展了基本的文件操作功能,提供了更便利的方法来处理文本数据。下面将详细介绍这个类的可能实现及其相关知识点。 首先,`FileEdit.cpp`和`FileEdit.h`是C++编程中的源...

    VC++逐行读取文本文件

    总的来说,VC++提供了多种方式来逐行读取文本文件,可以根据具体项目需求选择合适的方法。无论使用标准库还是MFC,理解并熟练掌握这些基本的文件操作技巧对于任何C++开发者来说都是非常重要的。

    单文件绿色文本替换软件

    这意味着用户不仅可以搜索和替换文本文件中的一般文本,还可以根据文件的扩展名(后缀名)来针对性地操作。例如,如果你需要批量修改所有`.txt`文件中的某个特定文本,这个工具可以帮助你快速完成,而无需手动逐个...

    使用文件流操作文本文件是什么以及学习了解使用文件流操作文本文件的意义是什么

    ### 使用文件流操作文本文件的重要性及应用场景 在计算机科学领域,使用文件流操作文本文件是一项基本而关键的技术。本文将详细介绍文件流的概念及其在文本文件处理中的应用,并深入探讨掌握这项技能的重要性和实际...

    Android平台的txt文本文件读写操作

    ### Android平台的txt文本文件读写操作 #### 一、引言 在Android应用程序开发过程中,文本文件(如.txt格式)的读写操作是常见需求之一。这些操作可以帮助开发者存储临时数据、配置信息或者实现简单的文件共享功能...

    文本文件的简单操作

    与二进制文件不同,文本文件可以被多种工具(如记事本、vim、emacs、Notepad++等)轻松打开和编辑。 1. **创建文本文件**:在命令行中,可以使用`touch`(Unix/Linux)或`New-Item`(PowerShell)创建一个空的文本...

    使用文件流操作文本文件.docx

    ### 使用文件流操作文本文件 #### 一、引言 在现代软件开发中,文件操作是一项基础且重要的技能。无论是处理日志文件、配置文件还是简单的数据存储,掌握如何使用文件流来操作文本文件都是必不可少的。文件流提供...

    基于Python PyQt5实现的文件操作Demo,含文本文件读写、二进制文件流化读写、原始字节数据读写、目录与文件操作

    这个基于Python PyQt5的文件操作Demo为我们展示了多种文件处理方法,包括文本文件的读写、二进制文件流化读写以及原始字节数据的读写,同时涵盖了目录和文件的管理。下面将详细解析这些知识点。 1. **文本文件读写*...

    UC文件文本的对比工具

    2. **跨平台**:许多开源软件支持Windows、MacOS和Linux等多种操作系统。 3. **自由分发**:用户可以自由下载、分享,甚至在遵守许可证规定的情况下修改和再发布。 4. **定制化**:用户可以根据需要修改软件源码,...

    自己写的java中文件的操作工具类,包括对目录的管理

    1. **文件操作**:在Java中,`java.io`包提供了丰富的类来执行文件操作,如`File`类用于文件和目录的基本操作,`FileReader`和`FileWriter`用于读写文本文件,`BufferedReader`和`BufferedWriter`用于提高读写效率,...

    文件操作类_文件操作_

    6. **CStdioFile类**:对于文本文件,可以使用CStdioFile类,它基于标准C库的stdio.h,提供了更简单的文本I/O操作。例如: ```cpp CStdioFile textFile; if (!textFile.Open("example.txt", CFile::modeRead)) {...

    大型文本文件打开软件

    PilotEdit Lite提供了多种功能,如搜索和替换、多行编辑、编码转换等,这些都对大型文本文件的管理至关重要。 在处理大型文本文件时,有以下几个关键知识点: 1. **分块读取**:为了降低内存占用,软件会将大文件...

    Delphi直接读写文本文件

    在Delphi编程环境中,直接读写文本文件是常见的...总之,Delphi提供了多种方式来直接读写文本文件,开发者可以根据具体需求选择合适的方法。在实际项目中,还需要考虑错误处理、文件锁定等问题,以确保程序的健壮性。

    VBNET逐行读写文本文件

    总之,VB.NET提供了多种方式处理文本文件,包括使用`FileOpen()`函数实现逐行读写。熟练掌握这些方法对于日常开发至关重要,尤其是在处理大量文本数据时。通过适当的错误处理和资源管理,你可以确保文件操作的安全性...

    能【上传文件】、【修改属性】、【文件改名】、【编辑文件】、【新建文件】、【新建目录】。 ·【批量删除文件和目录】、【批量修改文件和目录属性】

    对于文本文件,可以使用文本编辑器进行内容修改;对于程序代码,需要使用相应的编程环境或IDE;而对于图片等多媒体文件,则可能需要用到专业软件进行编辑。 【新建文件】是指创建一个新的空白文件,用户可以向其中...

    C#读写文本文件操作示例

    总的来说,C#中的文件操作涵盖了读取、写入、追加等多种操作,并支持多种编码方式。在处理不同编码的文本文件时,理解并正确设置编码至关重要,以避免乱码问题。在实际开发中,我们还应考虑错误处理,如文件不存在、...

    文本文件转换成二进制文件

    在实际应用中,将文本文件转换为二进制文件并嵌入到源代码中可能有多种原因,例如: - 减少运行时的I/O操作,提高程序性能。 - 预先加载大量数据,如地图、图像或音频,以减少运行时的等待时间。 - 保护数据不被...

    对文本文件的录入和保存

    它们简单易用,支持多种操作,而且在各种操作系统和编程语言中都有广泛的支持。本文将深入探讨如何对文本文件进行录入和保存,以及在此过程中可能涉及的一些基本概念和操作。 首先,文本文件是由可读字符(如字母、...

Global site tag (gtag.js) - Google Analytics