新聞中心
C#高級編程:文件操作類

創(chuàng)新互聯(lián)建站2013年開創(chuàng)至今,先為寬甸等服務(wù)建站,寬甸等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為寬甸企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
大家都知道,移動和刪除文件或文件夾可以使用FileInfo 和DirectoryInfo類的MoveTo() 和 Delete()方法來完成。File和Directory類的這兩個對應(yīng)方法是Move() 和 Delete()。FileInfo 和 File類也分別執(zhí)行CopyTo() 和 Copy()方法。沒有復(fù)制完整文件夾的方法,而應(yīng)復(fù)制文件夾中的每個文件。
這些方法的使用非常直觀—— SDK文檔提供了詳細(xì)的解釋。本節(jié)介紹在特定情況下,調(diào)用File類的靜態(tài)方法Move()、Copy()和Delete()的作用。為此,把前面的FileProperties示例擴(kuò)展為一個新示例FilePropetiesAndMovement。這個示例有一個額外的功能:無論什么時候顯示文件的屬性,該應(yīng)用程序都會給出刪除該文件的選項,或者把該文件移動和復(fù)制到其他地方的選項。
C#高級編程:FileInfo使用范例
下面介紹FilePropertiesAndMovement示例。圖1所示為該示例的用戶界面。
從這個屏幕圖上可以看出,它的外觀非常類似于FileProperties示例,但在窗口的底部添加了一個組,其中包含三個按鈕和一個文本框。這些控件僅在示例顯示了文件的屬性時才能使用,在其他情況下,它們都是禁用的。我們還壓縮了現(xiàn)有的控件,防止主窗體過大。在顯示文件的屬性時,該示例會自動把文件的完整路徑名放在底部的文本框中,供用戶編輯。用戶可以單擊底部的任何一個按鈕,執(zhí)行相應(yīng)的操作。此時,會顯示一個相應(yīng)的信息框,確認(rèn)該操作。在上面的示例中,如果用戶單擊了Copy To,則顯示如圖圖2所示的信息。
圖1
圖2
當(dāng)用戶單擊了Yes按鈕后,就可以開始執(zhí)行某些動作。用戶在窗體上執(zhí)行的某些動作會使顯示不正確。例如,在移動和刪除文件時,顯然不能在同一個地方顯示該文件的內(nèi)容。而且,如果改變同一個文件夾上的文件名,顯示的信息也會不正確。
此時,F(xiàn)ilePropertiesAndMovement示例會重新設(shè)置其控件,在文件的操作結(jié)束后,只顯示包含文件的文件夾。
為此,需要在FileProperties示例中添加相關(guān)的控件,及其事件處理程序代碼。
我們添加的控件是buttonDelete、buttonCopyTo、buttonMoveTo和 txtBoxNewPath。
首先看看用戶單擊Delete按鈕時調(diào)用的事件處理程序:
- protected void OnDeleteButtonClick(
- object sender, EventArgs e)
- {
- try
- {
- string filePath = Path.Combine(
- currentFolderPath,
- textBoxFileName.Text);
- string query = "Really delete the
- file\n" + filePath + "";
- if (MessageBox.Show(query,
- "Delete File", MessageBoxButtons.YesNo) ==
- DialogResult.Yes)
- {
- File.Delete(filePath);
- DisplayFolderList(currentFolderPath);
- }
- }
- catch(Exception ex)
- {
- MessageBox.Show("Unable to delete file.
- The following exception"
- + " occurred:\n" + ex.Message, "Failed");
- }
- }
這個方法的代碼包含在一個try塊中,這是因為很顯然會拋出一個異常,例如在用戶單擊了delete按鈕后,如果不允許刪除該文件,或者當(dāng)時有另一個進(jìn)程移動了該文件,就會拋出一個異常。在CurrentParentPath字段中構(gòu)造要刪除文件的路徑,其中包含父文件夾的路徑,textBoxFileName文本框中的文本。
以上就介紹了C#高級編程:使用文件操作類進(jìn)行移動、復(fù)制和刪除文件的方法。
網(wǎng)站題目:C#高級編程:移動、復(fù)制和刪除文件
本文網(wǎng)址:http://m.fisionsoft.com.cn/article/cdsgedj.html


咨詢
建站咨詢
