用ADIR函式
將檔案資訊存放到陣列中,然後返回檔案個數。
語法
ADIR(ArrayName[,cFileSkeleton[,cAttribute]])
引數
ArrayName
指定陣列名。如果陣列不存在,VisualFoxPro將自動建立此陣列。如果陣列存在,但其大小不足以包含所有資訊,則VisualFoxPro自動增加陣列大小,使得陣列能容納所有資訊。如果陣列超過了所需大小,VisualFoxPro將截掉多餘部分。如果陣列存在,並且ADIR()
函式由於沒找到匹配檔案而返回0,則陣列保持不變。如果陣列不存在,並且ADIR()函式返回零,則不建立陣列。
下表說明了陣列中每列的內容及其資料型別:
列陣列內容數值型別
1檔名字元型
2檔案大小數值型
3檔案日期日期型
4檔案時間字元型
5檔案屬性字元型
陣列的最後一列包含匹配檔案的檔案屬性。每個檔案屬性值由一個字母表示,一個檔案可有多個屬性。下表說明每個字母表示的檔案屬性含義:
字母屬性
A檔案檔案一可讀寫(在FoxProforMacintosh中,此屬性無效)
H隱藏檔案
R只讀檔案
S系統檔案
D目錄或資料夾
cFileSkeleton
指定檔案梗概,以便儲存滿足搜尋條件的檔名或副檔名的檔案資訊。例如,條件可以是所有表、所有文字檔案、所有檔名第一個字母為“A”的檔案,等等。這些通配查詢在cFileSkeleton中可以包含萬用字元*和?。其中問號代表單個字元,星號代表任意字串。在檔案梗概中,可在任意位置使用任意個數的萬用字元。
在VisualFoxPro、FoxProforWindows和FoxProforMS-DOS中,可以指定驅動器和目錄名,程式將在此驅動器和目錄下搜尋匹配檔案。如果不指定驅動器和目錄名,將把當前目錄下的檔案資訊存入陣列中。
在FoxProforMacintosh中,可以搜尋匹配檔名的卷和資料夾。如果不指定卷和資料夾,FoxProforMacintosh將當前資料夾中的檔案資訊存入陣列中。
cAttribute
指定在返回內容中包含子目錄或巢狀資料夾、隱藏或系統檔案、或者卷名。
cAttribute可以是D、H和S的任意組合。如果包含D,除了返回匹配cFileSkeleton的檔名外,還將返回當前目錄的子目錄或當前資料夾的巢狀資料夾。如果包含H,將返回與cFileSkeleton指定相匹配的隱藏檔案資訊。如果包含S,將返回與cFileSkeleton指定通配檔名相匹配的系統檔案資訊。
如果cFileSkeleton為空字串,僅返回子目錄或巢狀資料夾名、隱藏或系統檔案。
cAttribute引數中包含字元V,將返回當前驅動器的卷名。如果V和D、H或S一起包含在陣列中,則只返回卷名。卷名存入陣列的第一個元素中,並截去陣列的其餘部分。
返回值型別
數值型
說明
對於每一個檔案,ADIR()將檔名、大小、日期、時間和屬性資訊存入陣列。
例子:
=adir(abc,"d:\123\*.jpg")
把d:\123資料夾下jpg照片檔案的名字、大小、日期、時間和屬性資訊存入陣列abc
用ADIR函式
將檔案資訊存放到陣列中,然後返回檔案個數。
語法
ADIR(ArrayName[,cFileSkeleton[,cAttribute]])
引數
ArrayName
指定陣列名。如果陣列不存在,VisualFoxPro將自動建立此陣列。如果陣列存在,但其大小不足以包含所有資訊,則VisualFoxPro自動增加陣列大小,使得陣列能容納所有資訊。如果陣列超過了所需大小,VisualFoxPro將截掉多餘部分。如果陣列存在,並且ADIR()
函式由於沒找到匹配檔案而返回0,則陣列保持不變。如果陣列不存在,並且ADIR()函式返回零,則不建立陣列。
下表說明了陣列中每列的內容及其資料型別:
列陣列內容數值型別
1檔名字元型
2檔案大小數值型
3檔案日期日期型
4檔案時間字元型
5檔案屬性字元型
陣列的最後一列包含匹配檔案的檔案屬性。每個檔案屬性值由一個字母表示,一個檔案可有多個屬性。下表說明每個字母表示的檔案屬性含義:
字母屬性
A檔案檔案一可讀寫(在FoxProforMacintosh中,此屬性無效)
H隱藏檔案
R只讀檔案
S系統檔案
D目錄或資料夾
cFileSkeleton
指定檔案梗概,以便儲存滿足搜尋條件的檔名或副檔名的檔案資訊。例如,條件可以是所有表、所有文字檔案、所有檔名第一個字母為“A”的檔案,等等。這些通配查詢在cFileSkeleton中可以包含萬用字元*和?。其中問號代表單個字元,星號代表任意字串。在檔案梗概中,可在任意位置使用任意個數的萬用字元。
在VisualFoxPro、FoxProforWindows和FoxProforMS-DOS中,可以指定驅動器和目錄名,程式將在此驅動器和目錄下搜尋匹配檔案。如果不指定驅動器和目錄名,將把當前目錄下的檔案資訊存入陣列中。
在FoxProforMacintosh中,可以搜尋匹配檔名的卷和資料夾。如果不指定卷和資料夾,FoxProforMacintosh將當前資料夾中的檔案資訊存入陣列中。
cAttribute
指定在返回內容中包含子目錄或巢狀資料夾、隱藏或系統檔案、或者卷名。
cAttribute可以是D、H和S的任意組合。如果包含D,除了返回匹配cFileSkeleton的檔名外,還將返回當前目錄的子目錄或當前資料夾的巢狀資料夾。如果包含H,將返回與cFileSkeleton指定相匹配的隱藏檔案資訊。如果包含S,將返回與cFileSkeleton指定通配檔名相匹配的系統檔案資訊。
如果cFileSkeleton為空字串,僅返回子目錄或巢狀資料夾名、隱藏或系統檔案。
cAttribute引數中包含字元V,將返回當前驅動器的卷名。如果V和D、H或S一起包含在陣列中,則只返回卷名。卷名存入陣列的第一個元素中,並截去陣列的其餘部分。
返回值型別
數值型
說明
對於每一個檔案,ADIR()將檔名、大小、日期、時間和屬性資訊存入陣列。
例子:
=adir(abc,"d:\123\*.jpg")
把d:\123資料夾下jpg照片檔案的名字、大小、日期、時間和屬性資訊存入陣列abc