在VB中使用文件对象
自Visual Basic第一次发布以来,它的大多数主要功能都至少修改过一次。但是文件操作部分是个例外。在最原始的BasiC语言中,文件是用文件号读写的。用一个数字来操作一个文件可能有些晦涩难懂,这也让大部分初学者感到不习惯,难以理解。
随着Visual Basic Scripting edition 2.0 2.0版的发布,微软提供了一种全新的文件操作方法——file system object。用对象编程正是开发者想要使用的。这个对象,包括一些其他相关的对象,封装了所有的文件操作。本文将向您介绍这些对象,并向您展示如何使用它们进行编程。要使用这些对象,必须在VB应用程序中引用Microsoft脚本运行时(c:\ windows \ system \ scrrun.dll)对象库。但是如果你写的是Internet Explore的VBScript,可以直接用。以下是这些对象的摘要:
* Drive-代表单个驱动器,可以是软盘驱动器、硬盘或其他存储介质,如光驱。
* Drives-集合对象,包括系统中的所有驱动器。
* File-代表系统中的磁盘文件。
* Files-collection对象,它是一些文件的集合。通常,它表示目录中的所有文件。
* file system object-代表系统中整个文件系统的对象。包括所有驱动器、目录和文件。
* Folder-表示一个目录,可以是本地的,也可以是远程的。
*文件夹-一些目录的集合。
* Text stream-文本流对象,代表一个打开的文件进行读写。
要获得系统中所有驱动程序的信息,可以使用下面的代码。
Sub Main()
Dim objFSO作为新脚本。file system object
Dim drv loop作为脚本。驱动器
对于objFSO中的每个drvLoop。驱动器
调试。打印drvLoop。drive letter & ":\ "
If drv loop。drive type = Fixed _
或drvLoop。IsReady然后
调试。print " Total size:" _
& Format $(drv loop。TotalSize / (1024 ^ 2)," #0.00 Mb")
Debug。打印"可用空间:" _
& Format$(drvLoop。可用空间/ (1024 ^ 2)," # 0.00 MB ")
调试。打印“卷标:”& drvLoop。VolumeName
Else
Debug。打印“磁盘信息不可用”
如果
下一次循环
设置objFSO = Nothing
末端接头
在尝试访问软盘、光盘等可移动介质驱动器,尤其是笔记本电脑的可移动驱动器时,要注意这一点:无论驱动器中是否有磁盘,Windows都始终认为驱动器是存在的。此时,您可以使用Drive对象IsReady对象来检查驱动器是否就绪。否则,可能会导致VB应用程序死锁。
0条评论