您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> VB >> 真题 >> 正文    
  VB6.0中Dir()函数的使用方法 【注册男护士专用博客】          

VB6.0中Dir()函数的使用方法

www.nanhushi.com     佚名   不详 

  VB中提供的成员函数dir返回一个满足指定类型或指定文件属性的文件名,目录名或卷标名。dir函数的语法结构为:

Member Function Dir[(Pathname[,attributes])] As String

  其中参数Pathname通常为一个文件名,此文件名可以包含目录或文件夹以及驱动器符号,如果没有找到指定的Pathname,dir语句将返回一个零长度的字符串(""),支持多字符通配符和单字符通配符。需要注意的是:

  1.在程序中第一次调用dir函数时必须指明pathname参数,否则会产生运行错误;

  2.dir函数只返回满足pathname条件的第一个文件名或目录名,要得到其余满足条件的文件名,可以再次调用dir函数而不用带参数,当没有匹配的文件,dir函数返回零长度的字符串,而此时如果再想调用dir函数,必须指定pathname参数,否则出现运行错误;

  3.在没有检索到满足当前pathname匹配条件的文件时可以改变新的pathname值,但不能再次递归调用dir函数;

  4.调用dir函数时将属性参数设置为vbdirectory并不能连续返回子目录,仅返回当前目录下的目录。
  
  例1

Public Sub main()
Dim filenames As String
filenames = Dir("c:\", vbNormal + vbDirectory)
Do While filenames <> ""
Debug.Print filenames
filenames = Dir ’再次调用dir函数,此时可以不带参数
Loop
End Sub

  例2

’将符合条件的条件和目录分类,存到对应的数组中,完成输出
Public Sub main()
 Dim FileNames As String, DirNames As String
 Dim FileArray() As String, DirArray() As String
 Dim TotalDirs As Integer, TotalFiles As Integer
 Dim iLoop As Integer

 DirNames = "c:\"
 FileNames = Dir(Dirname, vbNormal + vbDirectory)
 Do While FileNames <> ""
  If FileNames <> "." And FileNames <> ".." Then
   If (GetAttr(Dirname & FileNames) And vbDirectory) = vbDirectory Then
    TotalDirs = TotalDirs + 1
    ReDim Preserve DirArray(TotalDirs)
    DirArray(TotalDirs) = FileNames
   Else
    TotalFiles = TotalFiles + 1
    ReDim Preserve FileArray(TotalFiles)
    FileArray(TotalFiles) = FileNames
   End If
  End If
  FileNames = Dir
 Loop
 ’这里可对数组进行排序,此处略
 Debug.Print "___Directories______"
 For iLoop = 0 To UBound(DirArray)
  Debug.Print DirArray(iLoop)
 Next
 Debug.Print "___Files____"
 For iLoop = 0 To UBound(FileArray)
  Debug.Print FileArray(iLoop)
 Next
End Sub

  Dir函数可以用在不确定本机是否存在某文件或目录的前提下后台帮助用户寻找并提示,然后运用该文件或目录完成指定操作,如run等。但是由于不能递归使用,这就意味着不能一次查找整棵树,更为糟糕的是,vb并没有提供用来在多个不知名的目录中查找某一给定的文件或文件簇的任何工具。幸运的win32api提供了一些文件查找的方法(SearchPath,FindFirstFile,FindNextFile等),此外还可利用已有的文件查找知识为用户创建一个listbox控件,用来显示所查找到的文件,以便用户能选中其一。

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    没有相关文章
    专 题 栏 目

      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)                            【进男护士社区逛逛】
    姓 名:
    * 游客填写  ·注册用户 ·忘记密码
    主 页:

    评 分:
    1分 2分 3分 4分 5分
    评论内容:
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。