Files对象是属于FSO的内容,Files对象有两个属性:Count和Item。

解决方案 »

  1.   

    Count:返回集合或Dictionary对象中的条目数,只读.
    应用:Dictionary对象,Drives集合,Files集合,Folders集合
    语法:object.Countobject总是“应用于”列表中某一项的名称
    eg:
    Dim a,d,i
    Set d=CreateObject("Scripting.Dictionary")
    d.Add "a","Athens"'添加一些关键字和条目。
    d.Add "b","Belgrade"
    d.Add "c","Cairo"
    a=d.Keys
    For i=0 To d.Count-1
    Print a(i)
    Next
    Item:
    对Dictionary对象中指定的Key,设置或返回一个Item。对于集合来说,基于指定的Key,返回一个Item,读/写属性.
    应用:Dictionary对象,Drives集合,Files集合,Folders集合
    语法:object.Item(key)[=newitem]
    object  必需的。   总是一个集合或Dictionary对象的名称
    key     必需的。   与被检索或添加的条目相关联的Key。
    newitem   可选的。仅用于Dictionary对象;没有用于集合的应用程序。如果提供的话,  newitem是与指定的Key相关联的新值。
    注意:
    如果在改变某个item时,没有找到key,则用指定的newitem创建一个新的key。如果在试图返回某个已存在条目时,没有找到key,则创建一个新key,且其相应的条目为空。
    Dim a, d, i
    Set d = CreateObject("Scripting.Dictionary")
    d.Add "a", "Athens" '添加一些关键字和条目。
    d.Add "b", "Belgrade"
    d.Add "c", "Cairo"
    a = d.Keys
    For i = 0 To d.Count - 1
    Print a(i)
    Next
    Print d.Item("a")
      

  2.   

    刚才试了一下,好象files集合以文件名作为item的key属性,那我们在遍历前不可能
    知道所以文件名的,所以这个属性意义不大
        Dim fs, f, f1, fc, s, ft
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set f = fs.GetFolder("d:\")
        Set fc = f.Files
        'Set fl = fc.Item(1)
        For Each f1 In fc
            Set ft = fc.Item(f1.Name)
            Exit For
        Next
        Debug.Print ft.Name