分享

文件和文件夹操作的20个核心知识点

 CHENYUMEN 2023-09-17

题目中所说的核心知识点是指文件和文件夹相关的对象,以及这些对象的方法和属性。

下文列举文件和文件夹相关的12个通用对象和8个局部对象,并在文章最后对20个对象中最重要的一个对象进行详细介绍。

一、12个通用对象

1、FileSystemObject 对象:提供了对计算机文件系统进行操作的方法和属性。

2、File 对象和Files 对象:File 对象表示一个文件,Files 对象表示一个文件集合,可以用于管理文件。

3、Folder 对象和Folders 对象:Folder 对象表示一个文件夹,Folders 对象表示一组文件夹,可以用于管理文件夹。

4、Drive 对象:表示一个物理驱动器,可以获取驱动器的信息和属性。

5、FileDialog 对象:提供了一个对话框,用户可以使用它选择文件或文件夹。

6、FileDialogFilter 对象和FileDialogFilters 对象:FileDialogFilter 对象表示一个文件过滤器,FileDialogFilters 对象表示一组文件过滤器,用于筛选在 FileDialog 对象中显示的文件类型。

7、FileDialogSelectedItems 对象:表示用户在 FileDialog 对话框中选择的文件或文件夹。

8、FileTypes 对象:表示文件类型的集合,用于指定在 FileDialog 对话框中显示的文件类型。

9、NewFile 对象:表示一个新创建的文件。

二、8个局部对象

1、Word特有对象:

1)FileConverter 对象:表示一个文件转换器,用于将 Word 文档转换为其他文件格式。

2)FileConverters 对象:表示一组文件转换器,可以用于配置 Word 的文件转换选项。

2、Excel特有对象:

1)FileExportConverter 对象:表示一个文件导出转换器,可用于将 Excel 工作簿导出为其他文件格式。

2)FileExportConverters 对象:表示一组文件导出转换器,可用于配置 Excel 的文件导出选项。

3、PowerPoint特有对象:

1)FileConverter 对象:表示一个文件转换器,用于将 PowerPoint 演示文稿转换为其他文件格式。

2)FileConverters 对象:表示一组文件转换器,可以用于配置 PowerPoint 的文件转换选项。

4、Outlook特有对象:

1)Folder 对象:表示一个文件夹,用于管理 Outlook 中的邮件和其他项目。

2)Folders 对象:表示一组文件夹,可用于列出和操作 Outlook 中的文件夹。

三、重点介绍一下FileSystemObject 对象

FileSystemObject 对象是 VBA 中用于操作计算机文件系统的最重要的对象。

它提供了一系列方法和属性,可以用于创建、复制、删除、移动和重命名文件和文件夹,以及获取文件和文件夹的属性信息。

FileSystemObject 对象的方法和属性全部列如下:

1、方法


BuildPath :将名称附加到现有路径。


CopyFile :将一个或多个文件从一个位置复制到另一个位置。

CopyFolder :将一个或多个文件夹从一个位置复制到另一个位置。


CreateFolder :创建新文件夹。


CreateTextFile :创建文本文件并返回可用于从文件读取或写入文件的 TextStream 对象。

DeleteFile :删除一个或多个指定的文件。


DeleteFolder :删除一个或多个指定的文件夹。


DriveExists :检查指定的驱动器是否存在。


FileExists :检查指定的文件是否存在。


FolderExists :检查指定的文件夹是否存在。

GetAbsolutePathName :返回指定路径的驱动器根目录的完整路径。


GetBaseName :返回指定文件或文件夹的基名称。


GetDrive :返回对应于指定路径中的驱动器的 Drive 对象。

GetDriveName :返回指定路径的驱动器名称。


GetExtensionName :返回指定路径中最后一个组件的文件扩展名。


GetFile :返回指定路径的 File 对象。


GetFileName :返回指定路径中最后一个组件的文件名或文件夹名。


GetFolder :返回指定路径的 Folder 对象。

GetParentFolderName :返回指定路径中最后一个组件的父文件夹的名称。


GetSpecialFolder :返回某些 Windows 特殊文件夹的路径。


GetTempName :返回随机生成的临时文件或文件夹。


Move :将指定文件或文件夹从一个位置移动到另一个位置。


MoveFile :将一个或多个文件从一个位置移动到另一个位置。


MoveFolder :将一个或多个文件夹从一个位置移动到另一个位置。


OpenAsTextStream :打开指定文件并返回可用于从该文件读取、写入该文件或追加到该文件的 TextStream 对象。

OpenTextFile :打开文件并返回可用于访问该文件的 TextStream 对象。


WriteLine :将指定字符串和换行符写入 TextStream 文件。

2、属性 


Drives :返回计算机上所有 Drive 对象的集合。


name:设置或返回指定文件或文件夹的名称。


Path :返回指定文件、文件夹或驱动器的路径。

Size :对于文件,返回指定文件的大小(以字节为单位)。对于文件夹,返回文件夹中包含的所有文件和子文件的大小(以字节为单位)。


Type :返回有关文件或文件夹的类型的信息(例如,对于以 .TXT 结尾的文件,返回“文本文档”)。

3、FileSystemObject 对象代码举例


Sub FileSystemObjectExample()
Dim fso As Object
Dim file As Object
Dim folder As Object

' 创建一个新的 FileSystemObject 对象
Set fso = CreateObject('Scripting.FileSystemObject')

' 检查文件是否存在
If fso.FileExists('C:\Path\to\file.txt') Then
' 获取文件对象
Set file = fso.GetFile('C:\Path\to\file.txt')

' 输出文件的绝对路径
Debug.Print 'File Path: ' & file.Path

' 输出文件的大小(以字节为单位)
Debug.Print 'File Size: ' & file.Size

' 复制文件到指定路径
fso.CopyFile 'C:\Path\to\file.txt', 'C:\New\Path\file.txt'

' 删除文件
fso.DeleteFile 'C:\Path\to\file.txt'
End If

' 检查文件夹是否存在
If fso.FolderExists('C:\Path\to\folder') Then
' 获取文件夹对象
Set folder = fso.GetFolder('C:\Path\to\folder')

' 输出文件夹的名称
Debug.Print 'Folder Name: ' & folder.Name

' 输出文件夹中的文件数量
Debug.Print 'Number of Files: ' & folder.Files.Count

' 遍历文件夹中的所有文件
For Each file In folder.Files
' 输出文件名
Debug.Print 'File Name: ' & file.Name
Next file

' 创建一个新的文件夹
fso.CreateFolder 'C:\New\Path\to\folder'

' 删除文件夹
fso.DeleteFolder 'C:\Path\to\folder'
End If

' 释放对象引用
Set fso = Nothing
Set file = Nothing
Set folder = Nothing
End Sub

上述代码演示了如何使用 FileSystemObject 对象来检查文件和文件夹的存在性、获取文件和文件夹的属性信息、复制和删除文件、创建和删除文件夹。可以根据实际需求对代码进行修改和扩展。记得在使用前导入 Microsoft Scripting Runtime 库。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多