當前位置:歷史故事大全網 - 歷史天氣 - vb60编程

vb60编程

用Dir函数,就可以搞定。

Dir函数

返回一个字符串,则表示一个文件名、目录名或文件夹名称,它必须与指定的模式或文件属性、或磁盘卷标相匹配。

语法

Dir[(pathname[,attributes])]

Dir 函数的语法如下几个部分:

部分

pathname 可选参数。用于描述指定文件名的字符串表达式,可能包含目录或文件夹、以及驱动器。如果没有找到路径名

属性任选参数。常用或数值表达式,其一般用于指定文件属性。如果省略,则返回匹配路径名但不包含

设置值

属性参数的设置校正:

基站值描述

vbNormal 0 (步行)

vbReadOnly 1 指定无属性的网络文件

vbHidden 2 指定无属性隐藏的文件

VbSystem 4 指定无属性的网络文件系统文件在Macintosh中不可用。

vbVolume 8 指定卷标文件;如果指定了其他属性,则忽略vbVolume在Macintosh中不可用。

vbDirectory 16 指定无属性文件其路径和文件夹。

vbAlias 64 指定的文件名是别名,仅在 Macintosh 上可用。

注意这些位置是由 VBA 所指定的,在程序代码中的任何位置,都可以使用这些字符来替换真正的数值。

说明

在 Microsoft Windows 中,Dir 支持多字符 (*) 和单字符 (?) 的通配符来指定南瓜文件。

在Macintosh中,这些字符作为合法文件名字符并且不能作为通配符来指定多个文件

由于Macintosh不支持通符,使用文件类型指定文件组。可以使用 MacID 函数指定文件类型而不用文件名。比如,以下语句返回当前文件夹中第一个 TEXT 文件的名称:

Dir("SomePath", MacID("TEXT"))

为选中文件夹中所有文件,指定一个空字符串:

Dir("")

在 Microsoft Windows 中,如果在 Dir 函数中使用 MacID

任何大于256的属性值都被认为是MacID函数的值。

第一次调用Dir函数时,必须指定路径名,否则会产生错误。如果也指定了文件属性,那么就必须包含路径名。

Dir 会返回匹配路径名的第一个文件名。若想得到其他匹配路径名的文件名,再一次调用 Dir,且不要使用参数。如果已没有合乎条件的文件,则 Dir 会返回一个零长度字符串 ("")。一旦返回值零长度字符串,并要再次调用 Dir 时,就必须指定路径名,否则会产生错误。不必访问到所有匹配当前路径名的文件名,就可以更改到一个新的路径名上。

但是,不能以分层方式来调用 Dir 函数。以 vbDirectory 属性来调用 Dir 不能连续地返回子目录。

提示由于文件名并不会以特殊的顺序来返回,所以可以将文件名存储在一个数据库中,然后再对这个数据库排序。

Dir 函数示例

本示例使用 Dir 函数来检查某些文件或目录是否存在。在 Macintosh 计算机上,默认驱动器名称为“HD”,并且路径部分由冒号取代反斜线隔开。而且 Microsoft Windows 的通配符在 Mac 中可以作为有效字符出现在文件名中。也可以使用 MacID 函数来指定文件组。

Dim MyFile,MyPath,MyName

'返回“WIN.INI”(在 Microsoft Windows 中)(如果该文件存在)。

MyFile = Dir(" C:\WINDOWS\WIN.ini")

' 返回带指定扩展名的文件名。如果超过一个 *.ini 文件存在,

' 函数将按条件返回第找到一个文件名。

MyFile = Dir("C:\WINDOWS\*.ini")

'若第二次调用Dir函数,但不带任何参数,则函数将返回相同目录下的下一个 *.ini 文件。

MyFile = Dir

' 返回找到的第一个隐式 *.TXT 文件。

MyFile = Dir

' 返回找到的第一个隐式 *.TXT 文件。 >

MyFile = Dir("*.TXT", vbHidden)

' 显示 C:\ 目录下的名称。

MyPath = "c:\" ' 指定路径。

MyName = Dir(MyPath, vbDirectory) ' 寻找第一项。

Do While MyName lt;gt; "" '开始循环。

'跳过当前的目录及上层目录。

If MyName lt;gt; "." And MyName lt;gt; ".." then

' 使用位置比较来确定 MyName 代表一目录。

If (GetAttr(MyPath amp; MyName) And vbDirectory) = vbDirectory然后

Debug.Print MyName '如果是一个目录,将其名称显示出来。

End If

End If

MyName = Dir '查找下一个目录。

循环

  • 上一篇:2014年的马年春联大全(带横批、上联、下联)
  • 下一篇:二维码谁发明的,专利属于哪个国家?
  • copyright 2024歷史故事大全網