自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

VB.NET System.IO老鳥經(jīng)驗(yàn)談

開(kāi)發(fā) 后端
這里介紹在.NET中與文件有關(guān)的類都集中在VB.NET System.IO這個(gè)大類中,在此大類中我們可以看見(jiàn)很多以“File”開(kāi)頭的類名。

經(jīng)過(guò)長(zhǎng)時(shí)間學(xué)習(xí)VB.NET System.IO,于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。文件操作是軟件開(kāi)發(fā)中必不可少的任務(wù)。記得筆者在學(xué)習(xí)Visual Basic6.0文件操作的編程時(shí)頗費(fèi)了一番周折。不過(guò)現(xiàn)在有了.NET大大簡(jiǎn)化了開(kāi)發(fā)難度,簡(jiǎn)化了學(xué)習(xí)難度,使初學(xué)者可以在很短的時(shí)間就可以掌握與文件相關(guān)的編程技巧。

認(rèn)識(shí)VB.NET System.IO

VB.NET中與文件有關(guān)的類都集中在VB.NET System.IO這個(gè)大類中,在此大類中我們可以看見(jiàn)很多以“File”開(kāi)頭的類名。下面我們就介紹幾個(gè)常用的類,它們分別是:
◆Directory :用于創(chuàng)建、移動(dòng)和枚舉目錄和子目錄的靜態(tài)方法。
◆File:用于創(chuàng)建、復(fù)制、刪除、移動(dòng)和打開(kāi)文件的靜態(tài)方法,并協(xié)助創(chuàng)建 FileStream 對(duì)象。
◆FileInfo:提供創(chuàng)建、復(fù)制、刪除、移動(dòng)和打開(kāi)文件的實(shí)例方法,并且?guī)椭鷦?chuàng)建 FileStream對(duì)象。
◆FileStream:與 Stream對(duì)象配合,完成更多的文件操作。我們將在后一節(jié)對(duì)它進(jìn)行介紹。
◆Path:指定文件的目錄路徑信息。

在下面的程序片段中我們將使用上面提到的幾個(gè)類和大家最常用的“文件打開(kāi)”對(duì)話窗來(lái)完成一個(gè)基于文件的編程。程序功能:將文件移動(dòng)到回收站文件夾中,并且從回收站中運(yùn)行這些程序。

可能很多讀者會(huì)問(wèn),為什么以這段代碼為例呢?原因有三個(gè):
1.這段代碼符合本節(jié)的內(nèi)容。
2.在Windows發(fā)布之初很多病毒程序就是被放在回收站中的,而這些技術(shù)必定會(huì)提高讀者學(xué)習(xí)本文的興趣。
3.此程序還有一定的實(shí)用性。如果有比較重要的文件你可以將它 Copy到回收站中。

誰(shuí)會(huì)想到在回收站中保存文件呢?而且對(duì)于一般用戶來(lái)說(shuō),他們不會(huì)知道回收站可以保存并運(yùn)行文件,因?yàn)殡p擊回收站中的文件不會(huì)運(yùn)行,只會(huì)顯示它的文件屬性。就算打開(kāi)回收站也只能看見(jiàn)要被刪除的文件,而看不見(jiàn)我們專門保存到回收站的文件。

添加控件并設(shè)置相關(guān)屬性:三個(gè)Button、一個(gè)LISTBOX、一個(gè)OPENFILEDIALOG控件。

VB.NET System.IO代碼

雙擊Button1加入如下代碼,在代碼中有詳細(xì)的注釋:

  1. Private Sub Button1_ClickByVal sender As System.Object 
    ByVal e As System.EventArgs Handles Button1.Click  
  2. OpenFileDialog1.ShowDialog  
  3. '顯示文件打開(kāi)對(duì)話框  
  4. Dim fname As New FileInfoOpenFileDialog1.FileName  
  5. '初始化FILEINFO類,此類可以獲得文件的各種信息,在本代碼中用來(lái)獲得文件名  
  6. Dim copyf As System.IO.File  
  7. '初始化FILE類,此類用來(lái)對(duì)文件進(jìn)行具體的操作,本代碼中用來(lái)實(shí)現(xiàn)文件的轉(zhuǎn)移  
  8. sname = fname.Name  
  9. '使用fileinfo類的name屬性來(lái)獲得文件名,但不包含路徑  
  10. copyf.MoveOpenFileDialog1.FileName  
  11. '移動(dòng)到回收站文件夾,RECYCLED是回收站文件夾  
  12. End Sub 

雙擊Button2加入如下代碼,在代碼中有詳細(xì)的注釋:

  1. Private Sub Button2_ClickByVal sender As Object 
    ByVal e As System.EventArgs Handles Button2.Click  
  2. Dim zh  
  3. Dim pj As String  
  4. '在listbox控件中選定要運(yùn)行的文件  
  5. zh = ListBox1.SelectedIndex  
  6. '用zh記錄選中的序列號(hào)  
  7. pj = ListBox1.Items.Itemzh   
  8. '用pj記錄序列號(hào)所對(duì)應(yīng)的文字,本代碼中對(duì)應(yīng)的文字表示文件名  
  9. Me.Text = ″正在運(yùn)行程序″ + pj  
  10. '在窗口標(biāo)題欄處表示運(yùn)行的程序,這些程序都是在listbox中列出的,即在回收站中的文件  
  11. Dim spros As New System.Diagnostics.Process   
  12. 'Process是進(jìn)程類,在Visual Basic .Net中與Visual Basic6.0中的shell函數(shù)類似 
  13. '在后面的文章中我們將對(duì)它進(jìn)行專門的探討。  
  14. spros.Start pj  
  15. '利用Process類中的start屬性運(yùn)行選定的文件  
  16. End Sub 

雙擊在Button3加入如下代碼,在代碼中有詳細(xì)的注釋:

  1. Private Sub Button3_Click ByVal sender As Object 
    ByVal e As System.EventArgs Handles Button3.Click  
  2. Dim dir As System.IO.Directory  
  3. '由于目錄對(duì)象可以直接實(shí)現(xiàn)目錄的操作所以這里使用它獲得回收文件的個(gè)數(shù)  
  4. Dim i As Integer  
  5. Dim filename fileno  
  6. ListBox1.Items.Clear  
  7. '清空l(shuí)istbox,為下次顯示做準(zhǔn)備  
  8. filename = dir.GetFiles″c\recycled″ ″″  
  9. '利用Directory類的Getfile屬性獲得文件數(shù)組  
  10. fileno = dir.GetFiles″c\recycled″ ″″.Length  
  11. '利用Length獲得數(shù)組的大小即回收站中到底有多少文件  
  12. For i = 0 To fileno - 1  
  13. ListBox1.Items.Addfilenamei  
  14. '將每個(gè)文件添加到listbox中,顯示回收站中的具體文件  
  15. Next  
  16. End Sub 

程序說(shuō)明:如果你要運(yùn)行文件,請(qǐng)先選中一個(gè)文件,再點(diǎn)擊“從回收站啟動(dòng)文件”按鈕。在顯示回收站文件中各位會(huì)看見(jiàn)一些奇怪的文件名,這些文件是你刪除的文件,但是微軟將這些文件的原文件名給改變了。所以大家不用理會(huì)這些文件,但是這些文件照樣可以在本程序中通過(guò)建立進(jìn)程并運(yùn)行,和你保存到回收站中的文件除了名字不同外,其他都一樣。注意當(dāng)你在“我的電腦”和“資源管理器”中打開(kāi)回收站并選擇“清空回收站”,那回收站中所有文件都會(huì)被刪除。

【編輯推薦】

  1. 對(duì)VB.NET OBEX協(xié)議的簡(jiǎn)單概括
  2. 寶典之初步了解VB.NET Web app
  3. 深入概括VB.NET實(shí)現(xiàn)IEnumerator接口
  4. 三分鐘掌握VB.NET操作MySql數(shù)據(jù)庫(kù)
  5. 三步了解VB.NET串口通訊如何發(fā)送接收數(shù)據(jù)
責(zé)任編輯:佚名 來(lái)源: 新浪博客
相關(guān)推薦

2009-10-28 13:35:25

VB.NET共享成員

2009-11-02 11:11:07

VB.NET OOP設(shè)

2009-10-29 09:40:35

VB.NET Text

2009-10-27 15:21:45

VB.NET文件處理

2010-01-20 18:34:46

VB.NET Syst

2009-09-14 15:04:44

2009-10-13 17:08:10

CLR VB.NET

2009-11-03 17:35:05

VB.NET窗體透明度

2009-11-02 15:16:07

VB.NET編程

2009-10-14 11:27:20

VB.NET Grou

2010-01-14 18:14:22

VB.NET開(kāi)發(fā)特點(diǎn)

2009-10-26 13:13:17

VB.NET編碼規(guī)范

2009-10-16 14:31:48

VB.NET Noti

2009-10-26 16:01:03

VB.NET正則表達(dá)式

2009-10-10 15:43:51

2009-10-15 13:06:12

VB.NET Shar

2009-10-14 09:29:43

VB.NET加密

2010-01-21 14:49:44

VB.NET操作Wor

2009-10-15 17:57:33

VB.NET List

2009-11-10 14:52:13

VB.NET實(shí)現(xiàn)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)