第11章 文件操作_第1頁
第11章 文件操作_第2頁
第11章 文件操作_第3頁
第11章 文件操作_第4頁
第11章 文件操作_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第11章文件操作

文件系統(tǒng)概述三種不同類型的文件:順序文件、隨機(jī)文件和二進(jìn)制文件的處理文件系統(tǒng)控件1/11/20231

11.1文件的基礎(chǔ)知識

“文件”是指記錄在外部介質(zhì)上的數(shù)據(jù)的集合。它可以永久性的存儲信息。分類:順序文件:記錄一個(gè)接一個(gè)地存放隨機(jī)存取文件:在訪問隨機(jī)文件中的數(shù)據(jù)時(shí),不必考慮各個(gè)記錄的排列順序域位置,可以根據(jù)需要訪間文件中的任一個(gè)記錄1/11/2023211.2文件系統(tǒng)操作

文件的打開與關(guān)閉文件系統(tǒng)其它操作語句和函數(shù)1/11/20233

11.2.1文件的打開與關(guān)閉

1.文件的打開文件打開語句Open語句的語法格式如下:Open文件說明[For方式][Access存取類型][鎖定]As[#]文件號[Len=記錄長度]其中:(1)方式是要指定文件的輸入輸出方式。它的取值有以下幾種:Output:指定順序輸出方式。Input:指定順序輸入方式。Append:指定順序輸出方式。Random:指定隨機(jī)存取方式Binary:指定二進(jìn)制方式文件

1/11/20234

11.2.1文件的打開與關(guān)閉

(2)存取類型指以何種權(quán)限打開文件。其值可取以下幾種:Read:打開只讀文件。Write:打開只寫文件。ReadWrite:打開讀/寫文件(3)文件號是一個(gè)整型表達(dá)式,其取值在1~511的范圍之內(nèi)。(4)Len=記錄長度子句指定當(dāng)文件與程序之間拷貝數(shù)據(jù)時(shí)緩沖區(qū)的字符數(shù)。1/11/20235

11.2.1文件的打開與關(guān)閉

2.文件的關(guān)閉

VisualBasic提供了Close語句來進(jìn)行關(guān)閉文件的操作。其語法格式如下:

Close[[#]文件號][,[#]文件號]……

1/11/20236

11.3順序文件

順序文件就是普通的文本文件,任何文本編輯器都可以讀寫這種文件。讀寫順序文件時(shí),每次只能按順序讀寫一行,每行的長度可以變化。順序文件一般用于存儲字符、數(shù)字或者其它可用ASCII字符表示的數(shù)據(jù)類型,但不能存儲類似于位圖之類的信息。

1/11/20237

11.3.1順序文件的操作1.順序文件的打開和關(guān)閉順序文件的打開和關(guān)閉是用Open和Close語句,我們舉例說明在順序文件中語句的使用。OpenApp.Path+"\test.dat"ForOutputAs#1OpenApp.Path+"\test.dat"ForInputAs#1OpenApp.Path+"\test.dat"ForAppendAs#11/11/2023811.3.1順序文件的操作2.順序文件的寫操作寫順序文件可以用Write#和Print#語句,向一個(gè)已經(jīng)打開的文件中寫入數(shù)據(jù)。例如打開文件myfile.txt

:Open"myfile.txt"ForOutputAs#filenum

Write#語句的語法格式如下:

Write#文件號,變量列表用Write#語句寫入的信息有利于以后用Input#語句來讀取數(shù)據(jù),因?yàn)閃rite#語句自動將寫入到文件中的信息用逗號分開,并為字符串?dāng)?shù)據(jù)加上雙引號1/11/20239

3.順序文件的讀操作讀數(shù)據(jù)的操作由Input#語句和LineInput#語句實(shí)現(xiàn)。(1)Input函數(shù)Input函數(shù)可以從順序文件中一次讀取指定長度的字符串。Input函數(shù)可讀取包括換行符,回車符等在內(nèi)的字符。其語法格式如下:變量

=Input(串長度,文件號)例如,要從一個(gè)打開文件中讀取12個(gè)字符并復(fù)制到變量file中,可以這樣寫:file=Input(12,filenum)

11.3.1順序文件的操作1/11/202310(2)LineInput函數(shù)

LineInput函數(shù)以行為單位取得文件內(nèi)容,以行為單位是指從當(dāng)前位置開始到下一個(gè)換行符為止的內(nèi)容。換行符是Chr(13)&Chr(11)兩個(gè)字節(jié)組成。其語法格式如下:

LineInput#文件號,字符串變量其中:“文件號”是打開文件時(shí)所用的文件號“變量號”使用來存放讀出數(shù)據(jù)的一個(gè)或多個(gè)變量,如果有多個(gè)變量,中間用空格分割開。11.3.1順序文件的操作1/11/20231111.4隨機(jī)文件

隨機(jī)文件時(shí)可以按任意次序讀寫的文件,每行或者每個(gè)記錄的長度是固定的。隨機(jī)文件有以下特點(diǎn):(1)隨機(jī)文件的記錄是定長記錄,只有給出記錄號n,才能通過[(n.1)×記錄長度]計(jì)算出該記錄與文件首記錄的相對地址。因此,在用Open語句打開文件對必須指定記錄的長度。(2)每個(gè)記錄劃分為若干個(gè)字段,每個(gè)字段的長度等于相應(yīng)的變量的長度。(3)各變量(數(shù)據(jù)項(xiàng))要按一定格式置入相應(yīng)的字段。(4)打開隨機(jī)文件后,既可讀也可寫。1/11/202312

11.4隨機(jī)文件

1.隨機(jī)文件的打開和關(guān)閉打開隨機(jī)文件的語法格式:OpenfilenameForRandomas[#]filenumberLen=Reclength其中:Len子句用于設(shè)置記錄長度,長度由參數(shù)Reclength指定。Reclength的值必須大于0,而且必須與定義的記錄結(jié)構(gòu)的長度一致。

1/11/202313

11.4隨機(jī)文件

2.隨機(jī)文件的寫操作向隨機(jī)文件中寫入數(shù)據(jù)需要使用Put#語句。其語法格式如下:

Put#文件號,[記錄號,]變量其中:(1)文件號是指要打開的文件號;記錄號是指要寫入的記錄號,若省略,則在上一次用Get和Put語句所讀寫過的記錄的后一條記錄中寫入,若沒有執(zhí)行過Get和Put語句,從第一條記錄開始。(2)變量是包含要寫入數(shù)據(jù)的用戶自定義的變量。

1/11/202314

11.4隨機(jī)文件

3.隨機(jī)文件的讀操作讀取隨機(jī)文件可以使用Get#語句,數(shù)據(jù)從文件的一個(gè)指定記錄中讀出后,存入一個(gè)用戶自定義的變量中。其語法格式如下:Get#文件號,[記錄號,]變量其中:(1)文件號是指要打開的文件號;記錄號是指要寫入的記錄號,若省略,從下一條記錄開始。(2)變量是包含要輸出數(shù)據(jù)的用戶自定義的變量。

1/11/20231511.6文件系統(tǒng)控件

在應(yīng)用程序中,對文件的處理是一個(gè)比較常用的操作,如打開文件、保存文件,等等。

VisualBasic提供了三個(gè)控件對磁盤文件夾與文件進(jìn)行顯示與操作,它們分別是:DriveListBox(磁盤列表框)控件、DirListBox(文件夾列表框)控件,以及FileListBox(文件列表框)控件。1/11/20231611.6.1驅(qū)動器列表框DriveListBox

驅(qū)動器列表框是一個(gè)下拉式的列表框,它提供了一個(gè)驅(qū)動器的列表。當(dāng)單擊右邊的箭頭時(shí),彈出顯示計(jì)算機(jī)上或網(wǎng)絡(luò)上的所有驅(qū)動器的下拉列表。默認(rèn)狀態(tài)下,在驅(qū)動器列表中顯示的是當(dāng)前驅(qū)動器,我們可以輸入或從下拉列表中選擇有效的驅(qū)動器標(biāo)示符。1/11/20231711.6.1驅(qū)動器列表框DriveListBox可以通過語法設(shè)置運(yùn)行時(shí)顯示的驅(qū)動器名稱,這就要用到Drive屬性。其語法格式如下:磁盤列表框名稱.Drive=Drive(如C:或者D:,等等)。Drive屬性的有效驅(qū)動器包括:在運(yùn)行時(shí)控件創(chuàng)建和刷新時(shí)系統(tǒng)已有的、或連接到系統(tǒng)上的所有驅(qū)動器。使用該屬性時(shí),按下述格式之一返回所選驅(qū)動器:軟磁盤:“a:”或“b:”固定介質(zhì):“c:[volumeid]”網(wǎng)絡(luò)連接:“x:\\server\share”1/11/20231811.6.2目錄列表框DirListBox

目錄列表框從最高層目錄開始,顯示當(dāng)前驅(qū)動器的目錄結(jié)構(gòu),并按層次關(guān)系縮進(jìn)跟目錄下的所有子目錄。當(dāng)前目錄的子目錄都用關(guān)閉的文件夾表示,而它的上級目錄則用打開的文件夾表示。1/11/20231911.6.2目錄列表框DirListBox文件夾列表框控件可以顯示與設(shè)置文件夾的路徑,當(dāng)用戶在窗口中創(chuàng)建DirListBox控件時(shí),雙擊其中的文件夾,不需進(jìn)行編程就能自動顯示下一級的文件夾。其Path屬性只能在程序運(yùn)行中使用。其語法格式如下:文件夾列表框名稱.Path=具體的路徑通過對文件夾列表框的Change事件編程,可獲取當(dāng)前目錄的值:

PrivateSubDir1_Change()DimpathnameAsStringpathname=Dir1.PathEndSub1/11/20232011.6-3文件列表框FileListBox

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論