ADIR()函式將檔案信息存放到數組中,然後返回檔案個數。
基本介紹
- 中文名:ADIR( ) 函式
- 含義:檔案信息存放到數組返回檔案個數
- 參數:ArrayName
- 屬於:函式
語法,參數,說明,adir()函式示例,
語法
ADIR(ArrayName [, cFileSkeleton [, cAttribute [, cCreatorType]]])
參數
ArrayName
指定數組名。如果數組不存在,Visual FoxPro 將自動創建此數組。如果數組存在,但其大小不足以包含所有信息,則 Visual FoxPro 自動增加數組大小,使得數組能容納所有信息。如果數組超過了所需大小,Visual FoxPro 將截掉多餘部分。如果數組存在,並且 ADIR( ) 函式由於沒找到匹配檔案而返回 0,則數組保持不變。如果數組不存在,並且 ADIR( ) 函式返回零,則不創建數組。
下表說明了數組中每列的內容及其數據類型:
列 數組內容 數據類型 1 檔案名稱 字元型 2 檔案大小 數值型 3 檔案最後修改日期 日期型 4 檔案最後修改時間 字元型 5 檔案屬性 字元型
數組的最後一列包含匹配檔案的檔案屬性。每個檔案屬性值由一個字母表示,一個檔案可有多個屬性。下表說明每個字母表示的檔案屬性含義:
字母 屬性 A 檔案檔案 一 可讀寫 H 隱藏檔案 R 唯讀檔案 S 系統檔案 D 目錄或資料夾
cFileSkeleton
指定檔案梗概,以便存儲滿足搜尋條件的檔案名稱或擴展名的檔案信息。例如,條件可以是所有表、所有文本檔案、所有檔案名稱第一個字母為“A”的檔案,等等。這些通配查詢在 cFileSkeleton 中可以包含通配符 * 和 ?。其中問號代表單個字元,星號代表任意字元串。在檔案梗概中,可在任意位置使用任意個數的通配符。在 Visual FoxPro、FoxPro for Windows 和 FoxPro for MS-DOS 中,可以指定驅動器和目錄名,程式將在此驅動器和目錄下搜尋匹配檔案。如果不指定驅動器和目錄名,將把當前目錄下的檔案信息存入數組中。
在 FoxPro for Macintosh 中,可以搜尋匹配檔案名稱的卷和資料夾。如果不指定卷和資料夾,FoxPro for Macintosh 將當前資料夾中的檔案信息存入數組中。
cAttribute
指定在返回內容中包含子目錄或嵌套資料夾、隱藏或系統檔案、或者卷名。cAttribute 可以是 D、H 和 S 的任意組合。如果包含 D,除了返回匹配 cFileSkeleton 的檔案名稱外,還將返回當前目錄的子目錄或當前資料夾的嵌套資料夾。如果包含 H,將返回與 cFileSkeleton 指定相匹配的隱藏檔案信息。如果包含 S,將返回與 cFileSkeleton 指定通配檔案名稱相匹配的系統檔案信息。如果 cFileSkeleton 為空字元串,僅返回子目錄或嵌套資料夾名、隱藏或系統檔案。
cAttribute 參數中包含字元 V,將返回當前驅動器的卷名。如果 V 和 D、H 或 S 一起包含在數組中,則只返回卷名。卷名存入數組的第一個元素中,並截去數組的其餘部分。
cCreatorType
僅用於 FoxPro for Macintosh。用指定的創建程式類型指定檔案。如果參數 cFileSkeleton 為空字元串,則僅有匹配指定創建程式類型 cCreatorType 的檔案放置到數組中去。如果在參數 cfileSkeleton 中有一個檔案梗概,則匹配檔案梗概且具有 cCreatorType 指定的創建程式類型的檔案被放入數組中。若要獲取 FoxPro for Macintosh 所有的檔案擴展名以及相關的創建程式類型,請參閱檔案擴展名與檔案類型。
說明
對於每一個檔案,ADIR( ) 將檔案名稱、大小、日期、時間和屬性信息存入數組。
adir()函式示例
下面的示例使用 adir( ) 函式創建一個包含資料庫信息的數組,然後顯示這些資料庫名。
close databasesset path to (home( ) + 'samples\data')
gndbcnumber = adir(gadatabase, '*.dbc') && 創建數組
clearfor ncount = 1 to gndbcnumber && 依據資料庫的個數循環? gadatabase(ncount,1) && 顯示資料庫名endforset path to home( ) && 設定路徑至 visual foxpro 目錄