ch8(文件).ppt_第1頁
ch8(文件).ppt_第2頁
ch8(文件).ppt_第3頁
ch8(文件).ppt_第4頁
ch8(文件).ppt_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第八章 文 件,本章內(nèi)容及要求: 掌握文件系統(tǒng)控件(驅(qū)動器列表框DriveListBox、 目錄列表框DirListBox、文件列表框FilelistBox。 掌握VB中文件的概念、種類及其結(jié)構(gòu); 掌握順序文件的操作:打開、讀/寫、關(guān)閉; 了解隨機文件的操作:打開、讀/寫、關(guān)閉; 了解二進制文件的操作:打開、讀/寫、關(guān)閉。,本章重點: 文件系統(tǒng)控件驅(qū)動器列表框、目錄列表框、文件列表框 的使用; 2. 順序文件的操作:打開、讀/寫、關(guān)閉。,8.1 文件管理控件,文件基本概念:獨立存儲在外部介質(zhì)(如磁盤) 上的以文件名標識的數(shù)據(jù)的集合 文件描述: 路徑+文件名 路徑=盤符+目錄路徑 三個與文件操作

2、有關(guān)的控件: 磁盤驅(qū)動器列表框。(Drive1 ) 目錄路徑列表框。(Dir1 ) 文件列表框。(File1 ),一、盤驅(qū)動器列表框控件(DriveListBox),用于顯示驅(qū)動器列表 缺省的名稱為:Drive1、Drive2、,1、主要屬性,(1)Drive屬性(字符串類型)(只寫) .Drive=驅(qū)動器名 如: drive1.drive”c” 等同于:drive1.drive”cvbdf” 只取第一個有效字符 事實上只要在運行時選擇需要的盤驅(qū)動器,這個屬性就自動被賦值。,2、List屬性(字符串數(shù)組) List數(shù)組的每一個元素中的字符串,為1個驅(qū)動器名,數(shù)組下標從0開始。 3、ListCo

3、unt屬性(正整數(shù)) 系統(tǒng)中盤驅(qū)動器的個數(shù)。,For i%=0 To Drive1.ListCount - 1 Print Drive1.List(i%) Next i%,2、常用事件過程,Change事件:運行時單擊驅(qū)動器列表框中某 一驅(qū)動器圖標時觸發(fā)(即drive屬性值改變) 注意: 1、如果選擇的驅(qū)動器或所賦值的屬性值與原來盤驅(qū)動器列表框中的drive屬性值相同,則不會引發(fā)change事件。 2、Drive顯示的驅(qū)動器名都是由系統(tǒng)自動生成的,用戶只能通過列表框選擇使用,不可以對Drive控件使用 AddItem、RemoveItem等方法添加或刪除列表項。,例8-1 (P225),編程:

4、在窗體上設(shè)計一個盤驅(qū)動器列表框Drive1、一個標簽Label1。 要求:當程序啟動時,設(shè)置當前驅(qū)動器為C盤;選擇盤驅(qū)動器列表框中的盤符,在標簽上顯示相應(yīng)的當前驅(qū)動器信息。 知識點: 在標簽框中顯示的盤驅(qū)動器信息應(yīng)在drive1的change時間中發(fā)生。,二、目錄路徑列表框控件(DirListBox),用于顯示當前驅(qū)動器中文件夾(目錄)列表 控件名稱為:Dir1、Dir2、,1、主要屬性 (1)Path屬性(字符串類型)(只寫) Path屬性值為當前目錄或所選擇的目錄名。 Path與Drive屬性的賦值區(qū)別: Drive只需單擊驅(qū)動器列表項 Path需要雙擊目錄列表項,Dir1.path=”c

5、:” 選中根目錄c:Dir1.path=”c:aaa” 選中根目錄下的子目錄只有當選中根目錄時,path屬性值的最后一個字符才為“”,例題8.1,設(shè)計標簽框顯示當前選擇的文件夾 知識點:也是使用dir1_change事件 例題8.2,設(shè)計標簽框顯示當前驅(qū)動器及文件夾,(2) ListCount屬性 ( 正整數(shù) ),表示當前目錄的一級子目錄的數(shù)量;,不是目錄列表框中的目錄個數(shù);,4,(3) ListIndex 屬性 (整數(shù) ),表示被選中表項的索引號;,當前目錄的索引號:, 1,當前目錄的父目錄:, 2,父目錄,父目錄的父目錄:, 3,根目錄:, n,當前目錄的第1個子目錄:,0,當前目錄的第2

6、個子目錄:,1,當前目錄的最后1個子目錄:,ListCount-1,子目錄,(4) List屬性(字符串數(shù)組),字符串數(shù)組的每一個元素,都是列表的1個表項,,下標取值范圍:,都是一個具體的路徑。,n ListCount - 1,由系統(tǒng)自動生成,從下標取值不難看出,這個list屬性包括當前目錄列表框中的所有表項從父目錄直到當前目錄下的一級子目錄。(不包括子目錄下的目錄),2、 Dir的常用事件,(1) Change事件,Dir控件的Path屬性值改變時引發(fā)該事件。,(2) Click事件,Path屬性值改變,賦值語句,雙擊圖標,單擊Dir控件的某一表項時引發(fā)該事件。,被單擊的表項突出顯示, Li

7、stIndex值改變。,但是Path屬性值并不改變。,目錄列表框要隨著盤驅(qū)動器列表框的改變而改變。,三、文件列表框控件(FileListBox),文件列表框控件用于顯示當前目錄中的文件列表 控件名稱為:file1、file2 ,1、常用屬性,(1) Path 屬性(字符串類型),同目錄路徑列表框的Path屬性一樣。,設(shè)置當前文件列表框內(nèi)所顯示文件的存儲路徑。,文件列表框總是顯示Path所指示的文件夾中的文件。,例題8.3,三種文件控件的組合顯示及各種控件事件應(yīng)用,Private Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub Priva

8、te Sub Dir1_Change() File1.Path = Dir1.Path End Sub,(2) Pattern 屬性(字符串類型),用以設(shè)置文件列表框中文件的顯示模式。,缺省值為:“*.*”,可以在屬性窗口中設(shè)置, 也可以在程序中通過賦值設(shè)置。,File1. Pattern = “*.exe ; *.txt”,;,文件類型,(3) FileName屬性(字符串類型),用以設(shè)置或返回所選文件的文件名,只是文件名,不包含路徑,該屬性會根據(jù)文件列表框選擇的文件自動設(shè)置,文件框列表要隨著目錄列表框的改變而改變。,Private Sub File1_Click() 例題8.3 Print

9、 File1.FileName End Sub,2、 File 的常用事件,(1)pathchange:當文件列表框的路徑被代碼中 path屬性的設(shè)置所改變時,觸發(fā)此事件 (2)patternchange:當文件列表框的文件顯示模 式pattern屬性值改變時,觸發(fā)此事件 (3)click:用鼠標單擊文件列表框的列表項時, 觸發(fā)此事件 (4)dbclick:雙擊文件列表框的列表項時,觸發(fā) 此事件,Private Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub,Private Sub Dir1_Change() File1.Path =

10、Dir1.Path End Sub,Private Sub File1_Click() If Right(File1.Path, 1) = Then f$ = Form1.File1.Path + Form1.File1.FileName Else f$ = File1.Path + + File1.FileName End If End Sub,三個控件對文件操作的標準用法,8.2 與文件操作有關(guān)的語句,(一) Shell函數(shù)(方法) shell函數(shù)(方法),可調(diào)用相應(yīng)的可執(zhí)行文件(如*.exe)。 語法為:Shell (“文件的完整標識“,window_style) 例: Shell Ap

11、p.Path + + File1.filename, 1 (二)目錄和文件操作語句 通常是一個語句對應(yīng)一條系統(tǒng)命令。 1、改變默認盤:chdrive drive 2、創(chuàng)建文件夾:mkdir folder 3、刪除文件夾:rmdir folder 注意:要刪除的文件必須是空文件夾。 4、改變默認目錄:chdir path,5、復制文件語句:filecopy source,destination 其中,source和destination為字符串表達式,用來確定復制的源文件和目標文件,它們都可包括文件的存儲路徑。 6、刪除文件語句: kill file 例如:Kill “D:Tmpac.dat”為

12、了刪除一類文件,可使用文件通配符“*”和“?” 。此語句的功能對應(yīng)DEL系統(tǒng)命令。 7、文件改名和移動語句: Name old_name as new_name 說明:Name具有移動文件的功能,不能使用通配符“*”和“?”。,8.3 順序文件在程序中對文件的操作,通常按3個步驟進行:,(一)順序文件的打開和關(guān)閉 1、打開文件 Open Open “文件名” For 模式 As #文件號 Len=記錄長度 (1) 模式: Output:寫操作 Input:讀操作 Append:追加到文件未尾 (2) 文件號:是個整數(shù),其值范圍是:1511, (3) 記錄長度:指定數(shù)據(jù)緩沖區(qū)的大小。,2、關(guān)閉文

13、件 Close (3種類型文件都適用),格式: Close 文件號列表文件號列表,如:#1, #2, #3,如果省略,則將關(guān)閉Open語句打開的所有活動文件。 例如: Close #1, #2, #3 Close,例如: OPEN C:TEMPA.TXT FOR Input AS #1 OPEN C:TEMPB.TXT FOR Output AS #2 OPEN C:TEMPC.TXT FOR Append AS #3,(二) 順序文件的讀寫操作,1、寫操作 (1)Print #文件號,輸出列表 (格式同以前) (2)Write #文件號,輸出列表 (緊湊格式。數(shù)據(jù)項之間插入“,”,并給字符數(shù)

14、據(jù)加上雙引號。) Open “d:lsssss.txt For Output As #1 Print #1, One , txtTest; 123 Write #1, One , txtTest; 123 txtTest文本框 Close #1,結(jié)果,2. 讀順序文件 INPUT #文件號,變量列表 把讀出的每個數(shù)據(jù)項分別存放到所對應(yīng)的變量。 LINE INPUT #文件號,字符串變量 讀一行到變量中,主要用來讀取文本文件。 INPUT$(讀取字符數(shù), #文件號) 隨意讀取字符 3. 函數(shù) LOF(文件號):返回文件的長度(總字節(jié)數(shù))。 EOF(文件號):返回讀寫位置。 文件未尾時,EOF函數(shù)為True,否則為False。,例:讀文本

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論