9.7 文件操作語句和函數(shù)
考點(diǎn)14 文件指針
文件指針的定位通過Seek語句來實(shí)現(xiàn)。其格式為:
Seek# 文件號(hào),位置
Seek語句用來設(shè)置文件中下一個(gè)讀或?qū)懙奈恢??!拔募?hào)”的含義同前;“位置”是一個(gè)數(shù)值表達(dá)式,用來指定下一個(gè)要讀寫的位置,其值在1~(231-1)范圍內(nèi)。
說明:
(1)對于用Input,Output或Append方式打開的文件,“位置”是從文件開頭到“位置”為止的字節(jié)數(shù),即執(zhí)行下一個(gè)操作的地址,文件第1個(gè)字節(jié)的位置是1。對于用Random方式打開的文件,“位置”是一個(gè)記錄號(hào)。
(2)在Get或Put語句中的記錄號(hào)優(yōu)先于用Seek語句確定的位置。
考點(diǎn)15 其他語句和函數(shù)
1 FreeFile函數(shù)
用FreeFile函數(shù)可以得到一個(gè)在程序中沒有使用的文件號(hào)。利用這個(gè)函數(shù),可以把未使用的文件號(hào)賦給一個(gè)變量,用這個(gè)變量做文件號(hào),不必知道具體的文件號(hào)是多少
2 Loc函數(shù)
格式:Loc(文件號(hào))
Loc函數(shù)返回由“文件號(hào)”指定的文件的當(dāng)前讀寫位置格式中的“文件號(hào)”是Open語句中使用的文件號(hào)。
3 LOF函數(shù)
格式:LOF(文件號(hào))
LOF函數(shù)返回給文件分配的字節(jié)數(shù)(即文件的長度),與DOS下用Dir命令所顯示的數(shù)字相同。
4 Lock和Unlock語句
在網(wǎng)絡(luò)環(huán)境中,有時(shí)候幾個(gè)進(jìn)程可能需要對同一文件進(jìn)行存取。用Lock和Unlock語句可以對文件“鎖定”和“解鎖”。其格式為:
Lock[#]文件號(hào)[,記錄| [開始]To結(jié)束]
…
Unlock[#] 文件號(hào)[,記錄| [開始] To結(jié)束]
5 FileAttr函數(shù)
格式:FileAttr(文件號(hào),屬性)
6 EOF函數(shù)
格式:EOF(文件號(hào))
9.8 順序文件
考點(diǎn)16 順序文件的寫操作
1 Print#語句
格式:Print#文件號(hào),[[Spc(n)|Tab(n)][表達(dá)式表][;|,]]
Print#語句的功能是,把數(shù)據(jù)寫入文件中。Print#語句與Print方法的功能類似。Print方法所“寫”的對象是窗體、打印機(jī)或控件,而Print#語句所“寫”的對象是文件。
2 Write#語句
格式:Write#文件號(hào),表達(dá)式表
和Print#語句一樣,用Write#語句可以把數(shù)據(jù)寫入順序文件中。
考點(diǎn)17 順序文件的讀操作
1Input#語句
格式:Input#文件號(hào),變量表
Input#語句從一個(gè)順序文件中讀出數(shù)據(jù)項(xiàng),并把這些數(shù)據(jù)項(xiàng)賦給程序變量。
2 Line Input#語句
格式:Line Input#文件號(hào),字符串變量
Line Input#語句從順序文件中讀取一個(gè)完整的行,并把它賦給一個(gè)字符串變量。
3 Input$函數(shù)
格式:Input$(n,#文件號(hào))
Input$函數(shù)返回從指定文件中讀出的n個(gè)字符的字符串。也就是說,它可以從數(shù)據(jù)文件中讀取指定數(shù)目的字符。
9.9 隨機(jī)文件
考點(diǎn)18 隨機(jī)文件的打開與讀寫操作
1隨機(jī)文件的寫操作
隨機(jī)文件的寫操作分為以下4步:
(l)定義數(shù)據(jù)類型;
(2)打開隨機(jī)文件;
(3)將內(nèi)存中的數(shù)據(jù)寫入磁盤;
(4)關(guān)閉文件
2隨機(jī)文件的讀操作
從隨機(jī)文件中讀取數(shù)據(jù)的操作與寫文件的操作步驟類似,只是把第三步中的Put語句用Get語句來代替。其格式為:
Get#文件號(hào),[記錄號(hào)],變量
考點(diǎn)19 隨機(jī)文件記錄的增加和刪除
1增加記錄
在隨機(jī)文件中增加記錄,實(shí)際上是在文件的末尾附加記錄。其方法是,先找到文件最后一個(gè)記錄的記錄號(hào),然后把要增加的記錄寫到它的后面
2刪除記錄
在隨機(jī)文件中刪除一個(gè)記錄時(shí),并不是真正刪除記錄,而是把下一個(gè)記錄重寫到要?jiǎng)h除的記錄位置上,其后的所有記錄依次前移。
9.10 文件系統(tǒng)控件
考點(diǎn)20 驅(qū)動(dòng)器列表框和目錄列表框
1驅(qū)動(dòng)器列表框
在程序運(yùn)行期間,驅(qū)動(dòng)器列表框下拉顯示系統(tǒng)所擁有的驅(qū)動(dòng)器名稱。
2目錄列表框
目錄列表框用來顯示驅(qū)動(dòng)器上的目錄結(jié)構(gòu)。
考點(diǎn)21 文件列表框
用驅(qū)動(dòng)器列表框和目錄列表框可以指定當(dāng)前驅(qū)動(dòng)器和當(dāng)前目錄,而文件列表框可以用來顯示當(dāng)前目錄下的文件(可以通過Path屬性改變)。
文件列表框的默認(rèn)控件名是Filel。
文件的基本操作指的是文件的刪除、復(fù)制、移動(dòng)、改名等。在Visual Basic中可以通過相應(yīng)的語句執(zhí)行這些基本操作。
1刪除文件(Kill語句)
格式:Kill文件
用該語句可以刪除指定的文件。這里的“文件名”可以含有路徑。
2復(fù)制文件(FileCopy語句)
格式FileCopy原文件名,目標(biāo)文件名
用FileCopy語句可以把原文件復(fù)制到目標(biāo)文件,復(fù)制后兩個(gè)文件的內(nèi)容完全一樣。
3文件(目錄)重命名(Name語句)
格式:Name原文件名As新文件名用Name語句可以對文件或目錄重命名,也可以用來移動(dòng)文件
考點(diǎn)14 文件指針
文件指針的定位通過Seek語句來實(shí)現(xiàn)。其格式為:
Seek# 文件號(hào),位置
Seek語句用來設(shè)置文件中下一個(gè)讀或?qū)懙奈恢??!拔募?hào)”的含義同前;“位置”是一個(gè)數(shù)值表達(dá)式,用來指定下一個(gè)要讀寫的位置,其值在1~(231-1)范圍內(nèi)。
說明:
(1)對于用Input,Output或Append方式打開的文件,“位置”是從文件開頭到“位置”為止的字節(jié)數(shù),即執(zhí)行下一個(gè)操作的地址,文件第1個(gè)字節(jié)的位置是1。對于用Random方式打開的文件,“位置”是一個(gè)記錄號(hào)。
(2)在Get或Put語句中的記錄號(hào)優(yōu)先于用Seek語句確定的位置。
考點(diǎn)15 其他語句和函數(shù)
1 FreeFile函數(shù)
用FreeFile函數(shù)可以得到一個(gè)在程序中沒有使用的文件號(hào)。利用這個(gè)函數(shù),可以把未使用的文件號(hào)賦給一個(gè)變量,用這個(gè)變量做文件號(hào),不必知道具體的文件號(hào)是多少
2 Loc函數(shù)
格式:Loc(文件號(hào))
Loc函數(shù)返回由“文件號(hào)”指定的文件的當(dāng)前讀寫位置格式中的“文件號(hào)”是Open語句中使用的文件號(hào)。
3 LOF函數(shù)
格式:LOF(文件號(hào))
LOF函數(shù)返回給文件分配的字節(jié)數(shù)(即文件的長度),與DOS下用Dir命令所顯示的數(shù)字相同。
4 Lock和Unlock語句
在網(wǎng)絡(luò)環(huán)境中,有時(shí)候幾個(gè)進(jìn)程可能需要對同一文件進(jìn)行存取。用Lock和Unlock語句可以對文件“鎖定”和“解鎖”。其格式為:
Lock[#]文件號(hào)[,記錄| [開始]To結(jié)束]
…
Unlock[#] 文件號(hào)[,記錄| [開始] To結(jié)束]
5 FileAttr函數(shù)
格式:FileAttr(文件號(hào),屬性)
6 EOF函數(shù)
格式:EOF(文件號(hào))
9.8 順序文件
考點(diǎn)16 順序文件的寫操作
1 Print#語句
格式:Print#文件號(hào),[[Spc(n)|Tab(n)][表達(dá)式表][;|,]]
Print#語句的功能是,把數(shù)據(jù)寫入文件中。Print#語句與Print方法的功能類似。Print方法所“寫”的對象是窗體、打印機(jī)或控件,而Print#語句所“寫”的對象是文件。
2 Write#語句
格式:Write#文件號(hào),表達(dá)式表
和Print#語句一樣,用Write#語句可以把數(shù)據(jù)寫入順序文件中。
考點(diǎn)17 順序文件的讀操作
1Input#語句
格式:Input#文件號(hào),變量表
Input#語句從一個(gè)順序文件中讀出數(shù)據(jù)項(xiàng),并把這些數(shù)據(jù)項(xiàng)賦給程序變量。
2 Line Input#語句
格式:Line Input#文件號(hào),字符串變量
Line Input#語句從順序文件中讀取一個(gè)完整的行,并把它賦給一個(gè)字符串變量。
3 Input$函數(shù)
格式:Input$(n,#文件號(hào))
Input$函數(shù)返回從指定文件中讀出的n個(gè)字符的字符串。也就是說,它可以從數(shù)據(jù)文件中讀取指定數(shù)目的字符。
9.9 隨機(jī)文件
考點(diǎn)18 隨機(jī)文件的打開與讀寫操作
1隨機(jī)文件的寫操作
隨機(jī)文件的寫操作分為以下4步:
(l)定義數(shù)據(jù)類型;
(2)打開隨機(jī)文件;
(3)將內(nèi)存中的數(shù)據(jù)寫入磁盤;
(4)關(guān)閉文件
2隨機(jī)文件的讀操作
從隨機(jī)文件中讀取數(shù)據(jù)的操作與寫文件的操作步驟類似,只是把第三步中的Put語句用Get語句來代替。其格式為:
Get#文件號(hào),[記錄號(hào)],變量
考點(diǎn)19 隨機(jī)文件記錄的增加和刪除
1增加記錄
在隨機(jī)文件中增加記錄,實(shí)際上是在文件的末尾附加記錄。其方法是,先找到文件最后一個(gè)記錄的記錄號(hào),然后把要增加的記錄寫到它的后面
2刪除記錄
在隨機(jī)文件中刪除一個(gè)記錄時(shí),并不是真正刪除記錄,而是把下一個(gè)記錄重寫到要?jiǎng)h除的記錄位置上,其后的所有記錄依次前移。
9.10 文件系統(tǒng)控件
考點(diǎn)20 驅(qū)動(dòng)器列表框和目錄列表框
1驅(qū)動(dòng)器列表框
在程序運(yùn)行期間,驅(qū)動(dòng)器列表框下拉顯示系統(tǒng)所擁有的驅(qū)動(dòng)器名稱。
2目錄列表框
目錄列表框用來顯示驅(qū)動(dòng)器上的目錄結(jié)構(gòu)。
考點(diǎn)21 文件列表框
用驅(qū)動(dòng)器列表框和目錄列表框可以指定當(dāng)前驅(qū)動(dòng)器和當(dāng)前目錄,而文件列表框可以用來顯示當(dāng)前目錄下的文件(可以通過Path屬性改變)。
文件列表框的默認(rèn)控件名是Filel。
文件的基本操作指的是文件的刪除、復(fù)制、移動(dòng)、改名等。在Visual Basic中可以通過相應(yīng)的語句執(zhí)行這些基本操作。
1刪除文件(Kill語句)
格式:Kill文件
用該語句可以刪除指定的文件。這里的“文件名”可以含有路徑。
2復(fù)制文件(FileCopy語句)
格式FileCopy原文件名,目標(biāo)文件名
用FileCopy語句可以把原文件復(fù)制到目標(biāo)文件,復(fù)制后兩個(gè)文件的內(nèi)容完全一樣。
3文件(目錄)重命名(Name語句)
格式:Name原文件名As新文件名用Name語句可以對文件或目錄重命名,也可以用來移動(dòng)文件