VB輔導(dǎo):VB函數(shù)之Dir函數(shù)

字號(hào):

返回一個(gè) String,用以表示一個(gè)文件名、目錄名或文件夾名稱,它必須與指定的模式或文件屬性、或磁盤(pán)卷標(biāo)相匹配。
    語(yǔ)法
    Dir[(pathname[, attributes])]
    Dir 函數(shù)的語(yǔ)法具有以下幾個(gè)部分:
    部分描述
    pathname可選參數(shù)。用來(lái)指定文件名的字符串表達(dá)式,可能包含目錄或文件夾、以及驅(qū)動(dòng)器。如果沒(méi)有找到 pathname,則會(huì)返回零長(zhǎng)度字符串 ("")。
    attributes可選參數(shù)。常數(shù)或數(shù)值表達(dá)式,其總和用來(lái)指定文件屬性。如果省略,則會(huì)返回匹配 pathname 但不包含屬性的文件。
    設(shè)置值
    attributes 參數(shù)的設(shè)置可為:
    常數(shù)值描述
    vbNormal0(缺省) 指定沒(méi)有屬性的文件。
    vbReadOnly1指定無(wú)屬性的只讀文件
    vbHidden2指定無(wú)屬性的隱藏文件
    VbSystem4指定無(wú)屬性的系統(tǒng)文件
    vbVolume8指定卷標(biāo)文件;如果指定了其它屬性,則忽略vbVolume
    vbDirectory16指定無(wú)屬性文件及其路徑和文件夾。
    注意 這些常數(shù)是由 VBA 所指定的,在程序代碼中的任何位置,可以使用這些常數(shù)來(lái)替換真正的數(shù)值。
    說(shuō)明
    Dir 支持多字符 (*) 和單字符 (?) 的通配符來(lái)指定多重文件。
     由于 Macintosh 不支持通配符,使用文件類型指定文件組??梢允褂?MacID 函數(shù)指定文件類型而不用文件名。比如,下列語(yǔ)句返回當(dāng)前文件夾中第一個(gè)TEXT文件的名稱:
    Dir("SomePath", MacID("TEXT"))
     為選中文件夾中所有文件,指定一空串:
    Dir("")
    在 Microsoft Windows 中,如果在Dir函數(shù)中使用MacID函數(shù),將產(chǎn)生錯(cuò)誤。
    任何大于256的attribute值都被認(rèn)為是MacID 函數(shù)的值。
    在第一次調(diào)用 Dir 函數(shù)時(shí),必須指定 pathname,否則會(huì)產(chǎn)生錯(cuò)誤。如果也指定了文件屬性,那么就必須包括 pathname。
    Dir 會(huì)返回匹配 pathname 的第一個(gè)文件名。若想得到其它匹配 pathname 的文件名,再一次調(diào)用 Dir,且不要使用參數(shù)。如果已沒(méi)有合乎條件的文件,則 Dir 會(huì)返回一個(gè)零長(zhǎng)度字符串 ("")。一旦返回值為零長(zhǎng)度字符串,并要再次調(diào)用 Dir 時(shí),就必須指定 pathname,否則會(huì)產(chǎn)生錯(cuò)誤。不必訪問(wèn)到所有匹配當(dāng)前 pathname 的文件名,就可以改變到一個(gè)新的 pathname 上。但是,不能以遞歸方式來(lái)調(diào)用 Dir 函數(shù)。以 vbDirectory 屬性來(lái)調(diào)用 Dir 不能連續(xù)地返回子目錄。
    提示 由于文件名并不會(huì)以特別的次序來(lái)返回,所以可以將文件名存儲(chǔ)在一個(gè)數(shù)組中,然后再對(duì)這個(gè)數(shù)組排序。