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

C#高級編程:移動、復制和刪除文件

開發(fā) 后端
本節(jié)介紹在特定情況下,調(diào)用File類的靜態(tài)方法Move()、Copy()和Delete()等C#高級編程功能。前面的FileProperties示例擴展為一個新示例FilePropetiesAndMovement。

C#高級編程:文件操作類

大家都知道,移動和刪除文件或文件夾可以使用FileInfo 和DirectoryInfo類的MoveTo() 和 Delete()方法來完成。File和Directory類的這兩個對應方法是Move() 和 Delete()。FileInfo 和 File類也分別執(zhí)行CopyTo() 和 Copy()方法。沒有復制完整文件夾的方法,而應復制文件夾中的每個文件。

這些方法的使用非常直觀—— SDK文檔提供了詳細的解釋。本節(jié)介紹在特定情況下,調(diào)用File類的靜態(tài)方法Move()、Copy()和Delete()的作用。為此,把前面的FileProperties示例擴展為一個新示例FilePropetiesAndMovement。這個示例有一個額外的功能:無論什么時候顯示文件的屬性,該應用程序都會給出刪除該文件的選項,或者把該文件移動和復制到其他地方的選項。

C#高級編程:FileInfo使用范例

下面介紹FilePropertiesAndMovement示例。圖1所示為該示例的用戶界面。

從這個屏幕圖上可以看出,它的外觀非常類似于FileProperties示例,但在窗口的底部添加了一個組,其中包含三個按鈕和一個文本框。這些控件僅在示例顯示了文件的屬性時才能使用,在其他情況下,它們都是禁用的。我們還壓縮了現(xiàn)有的控件,防止主窗體過大。在顯示文件的屬性時,該示例會自動把文件的完整路徑名放在底部的文本框中,供用戶編輯。用戶可以單擊底部的任何一個按鈕,執(zhí)行相應的操作。此時,會顯示一個相應的信息框,確認該操作。在上面的示例中,如果用戶單擊了Copy To,則顯示如圖圖2所示的信息。

C#高級編程
圖1

C#高級編程
圖2

當用戶單擊了Yes按鈕后,就可以開始執(zhí)行某些動作。用戶在窗體上執(zhí)行的某些動作會使顯示不正確。例如,在移動和刪除文件時,顯然不能在同一個地方顯示該文件的內(nèi)容。而且,如果改變同一個文件夾上的文件名,顯示的信息也會不正確。

此時,F(xiàn)ilePropertiesAndMovement示例會重新設置其控件,在文件的操作結(jié)束后,只顯示包含文件的文件夾。

為此,需要在FileProperties示例中添加相關的控件,及其事件處理程序代碼。

我們添加的控件是buttonDelete、buttonCopyTo、buttonMoveTo和 txtBoxNewPath。

首先看看用戶單擊Delete按鈕時調(diào)用的事件處理程序:

  1. protected void OnDeleteButtonClick(  
  2. object sender, EventArgs e)  
  3. {  
  4. try  
  5. {  
  6. string filePath = Path.Combine(  
  7. currentFolderPath,   
  8. textBoxFileName.Text);  
  9.  
  10. string query = "Really delete the   
  11. file\n" + filePath + "";  
  12.  
  13. if (MessageBox.Show(query,   
  14. "Delete File", MessageBoxButtons.YesNo) ==   
  15. DialogResult.Yes)  
  16. {  
  17. File.Delete(filePath);  
  18.  
  19. DisplayFolderList(currentFolderPath);  
  20. }  
  21. }  
  22. catch(Exception ex)  
  23. {  
  24. MessageBox.Show("Unable to delete file.   
  25. The following exception"   
  26.  
  27. " occurred:\n" + ex.Message, "Failed");  
  28. }  
  29. }  

這個方法的代碼包含在一個try塊中,這是因為很顯然會拋出一個異常,例如在用戶單擊了delete按鈕后,如果不允許刪除該文件,或者當時有另一個進程移動了該文件,就會拋出一個異常。在CurrentParentPath字段中構造要刪除文件的路徑,其中包含父文件夾的路徑,textBoxFileName文本框中的文本。

以上就介紹了C#高級編程:使用文件操作類進行移動、復制和刪除文件的方法。

【編輯推薦】

  1. C#中定義裝箱和拆箱詳解
  2. 淺談C#類型系統(tǒng)
  3. 三種不同的C#異常類型
  4. 詳細介紹C#編譯器
  5. C#異常機制的相關解釋
責任編輯:冰荷 來源: tzwhx
相關推薦

2024-08-20 18:00:56

Python文件開發(fā)

2021-10-12 17:47:22

C# TAP異步

2009-09-09 18:20:29

C# XML編程

2009-08-17 07:55:00

C#文件操作

2011-04-01 14:24:07

C#編程

2009-08-26 10:34:15

C#類型C#變量

2009-08-25 11:10:20

C#編程實現(xiàn)顯示XML

2009-08-17 07:58:00

C#刪除文件目錄

2009-09-02 19:22:03

C#遞歸

2009-08-17 08:29:00

c#刪除指定文件

2009-09-02 13:15:23

C#數(shù)組復制

2009-08-24 11:02:52

C#接口映射

2009-08-24 09:55:26

C#接口轉(zhuǎn)換

2009-09-07 06:31:32

C#窗體移動

2024-09-29 16:22:18

多線程TaskC#

2024-09-27 19:42:09

工具C#Task?

2009-09-09 18:00:55

C# XML編程

2009-12-10 10:30:31

PHP刪除復制文件

2012-09-24 15:35:24

C#網(wǎng)絡協(xié)議UDP

2012-09-24 15:13:50

C#網(wǎng)絡協(xié)議TCP
點贊
收藏

51CTO技術棧公眾號