利用VisualBasic常用控件操作文件
|
(一)顯示文件
因為不同文件的存儲格式的差異,所以,只有用適當的方法才能正確的顯示不同的文件。表現在表層,也就是不同的文件后綴名不同,而且不同的應用軟件只能讀取和顯示某種或幾種不同格式的文件。如:以.DOC為后綴名的文件,用WORD就可以打開,但是用記事本就無法正確顯示.所以,VB中就給我們提供了不同的控件來顯示不同的文件。
在此我們以text控件為例子,看一看用它是怎樣顯示文件的。
| Private Sub mnuopen_Click() ’當點擊菜單中的打開文件時執行 Dim filepath as Sting Dim strLine As String '在未選擇文件時,text.text為空字符,,不顯示任何內容 text1.text = “” CommonDialog1.FileName = "" '下面語句設置文件過濾方式,可顯示擴展名為txt文件 CommonDialog1.Filter = "(*.txt)|*.txt" '建立打開方式的通用對話框,也可使用commondialog1.showopen CommonDialog1.Action = 1 filepath=CommonDialog1.FileName ‘得到選擇的文件 Open filepath For Input As #1 打開選擇的文件 Do Until EOF(1) ‘顯示打開的文件 Line Input #1, strLine text1.Text = text1.Text + strLine + Chr(13) + Chr(10) Loop Close #1 ‘關閉打開的文件 End Sub |
除了vb自帶的控件外,我們還可以使用fileSystemObject文件系統對象,file對象,以及files集合。下面我們給出兩個例子,更多更詳細的內容請參考前面目錄部分。
下面代碼舉例說明了如何獲得一個file對象,以及如何察看它的一個屬性。
| Sub ShowFileInfo(filespec) Dim fs, f, s Set fs = CreateObject("scripting.FileSystemObject") Set f = fs.GetFile(filespec) s = f.DateCreated MsgBox s End Sub |
對于如何獲得一個files集合,以及如何用For Each……Next語句來訪問這個集合中的每個file,我們可以參考下面的例子:
| Sub ShowFolderList( folderspec ) ‘folderspec 為文件夾名稱 Dim fs , f, f1,fc , s Set fs = CreateObject(“Scripting.FileSystemObject”) Set f = fs.GetFolder(folderspec) ‘得到folderspec文件夾相關的folder對象 Set fc = f.Files ‘得到folder對象所包含的文件夾的files集合 For Each fi in fc ‘訪問folder集合中的每一個folder s= s & f1.name ‘格式化要顯示的文本 s= s & vbCrLf Next MsgBox s ‘用對話框顯示信息 End Sub |
現成的控件一般只能顯示文件,如果要進行更多的操作,請看下面的內容。