ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之上傳文件實現(xiàn)代碼
更新時間:2012年10月06日 23:27:09 作者:
用戶最終是要和文件打交道的,文件夾僅僅是用來方便管理的。文件的上傳和下載也就成為“網(wǎng)絡(luò)硬盤”功能設(shè)計中的重要一環(huán)
1、界面布置
這部分功能涉及到的控件主要有兩個:一個是(ID)為WebFile的File Field控件,用來瀏覽上傳文件路徑;另一個是(ID)為btnUpLoad的上傳按鈕,單擊它完成文件上傳。
2、代碼實現(xiàn)
在“設(shè)計”面板中雙擊btnUpLoad按鈕,為其添加事件處理,其代碼如下所示:
private void BtnUpload_Click(object sender, System.EventArgs e)
{
if(WebFile.PostedFile.FileName=="")
{
Info.Text="請先選擇要上傳的文件";
return;
}
try
{
char[] spliter = {'\\'};
string [] FileName = WebFile.PostedFile.FileName.Split(spliter,10);
string FullPath = CurrentPath + @"\" + FileName[FileName.Length-1];
//生成完整文件名
WebFile.PostedFile.SaveAs(FullPath); //保存文件
LoadDir(CurrentPath); //重新載入當前目錄
}
catch
{
Info.Text="上傳文件失敗,請與管理員聯(lián)系";
}
}
首先要判斷用戶是否選擇了要上傳的文件,這可以通過WebFile.PostedFile.FileName屬性來得到。需要說明的是:WebFile是一個File Field控件對象,該控件屬于HtmlInputFile類,HtmlInputFile.PostedFile方法用來獲取對客戶端上載文件的訪問。
在確定用戶選擇了要上傳的文件后,就要對其上傳的路徑進行設(shè)置。首先要得到該文件的文件名。由于用戶提供的是一個客戶端完整路徑,需要用Split()方法按“//”分隔符進行分割,結(jié)果保存在一個數(shù)組里。如:“C://UserDir//Chapter1//Ch1.doc”可以被分割為四部分,其最后一部分(數(shù)組最后一項)正是需要的文件的名稱。在上面的程序中,F(xiàn)ileName[FileName.Length-1]即為用戶上傳的文件名。
得到上傳路徑后就可以進行上傳,這里用到PostedFile.SaveAs()方法。完成上傳后,調(diào)用LoadDir()方法就可以顯示出剛才上傳的文件名。
運行時單擊“瀏覽”按鈕,將出現(xiàn)如圖16-5所示的對話框。選定文件后,單擊“確定”按鈕完成文件上傳工作。

圖“瀏覽”要上傳的文件
這部分功能涉及到的控件主要有兩個:一個是(ID)為WebFile的File Field控件,用來瀏覽上傳文件路徑;另一個是(ID)為btnUpLoad的上傳按鈕,單擊它完成文件上傳。
2、代碼實現(xiàn)
在“設(shè)計”面板中雙擊btnUpLoad按鈕,為其添加事件處理,其代碼如下所示:
復制代碼 代碼如下:
private void BtnUpload_Click(object sender, System.EventArgs e)
{
if(WebFile.PostedFile.FileName=="")
{
Info.Text="請先選擇要上傳的文件";
return;
}
try
{
char[] spliter = {'\\'};
string [] FileName = WebFile.PostedFile.FileName.Split(spliter,10);
string FullPath = CurrentPath + @"\" + FileName[FileName.Length-1];
//生成完整文件名
WebFile.PostedFile.SaveAs(FullPath); //保存文件
LoadDir(CurrentPath); //重新載入當前目錄
}
catch
{
Info.Text="上傳文件失敗,請與管理員聯(lián)系";
}
}
首先要判斷用戶是否選擇了要上傳的文件,這可以通過WebFile.PostedFile.FileName屬性來得到。需要說明的是:WebFile是一個File Field控件對象,該控件屬于HtmlInputFile類,HtmlInputFile.PostedFile方法用來獲取對客戶端上載文件的訪問。
在確定用戶選擇了要上傳的文件后,就要對其上傳的路徑進行設(shè)置。首先要得到該文件的文件名。由于用戶提供的是一個客戶端完整路徑,需要用Split()方法按“//”分隔符進行分割,結(jié)果保存在一個數(shù)組里。如:“C://UserDir//Chapter1//Ch1.doc”可以被分割為四部分,其最后一部分(數(shù)組最后一項)正是需要的文件的名稱。在上面的程序中,F(xiàn)ileName[FileName.Length-1]即為用戶上傳的文件名。
得到上傳路徑后就可以進行上傳,這里用到PostedFile.SaveAs()方法。完成上傳后,調(diào)用LoadDir()方法就可以顯示出剛才上傳的文件名。
運行時單擊“瀏覽”按鈕,將出現(xiàn)如圖16-5所示的對話框。選定文件后,單擊“確定”按鈕完成文件上傳工作。

圖“瀏覽”要上傳的文件
您可能感興趣的文章:
- ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之文件夾實現(xiàn)
- asp.net 網(wǎng)絡(luò)硬盤實現(xiàn)分析
- ASP.NET+XML打造網(wǎng)絡(luò)硬盤原理分析
- ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之兩重要類代碼
- ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之查看文件夾實現(xiàn)代碼
- ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之下載或在線查看實現(xiàn)代碼
- ASP.NET設(shè)計網(wǎng)絡(luò)硬盤之刪除文件夾實現(xiàn)代碼
- Asp.net mvc實時生成縮率圖到硬盤
相關(guān)文章
Asp.NetCore3.1開源項目升級為.Net6.0的方法實現(xiàn)
自從.Net6.0出來后,一直想之前開發(fā)的項目升級.Net6.0,本文就詳細的介紹一下如何將Asp.NetCore3.1開源項目升級為.Net6.0,感興趣的小伙伴們可以參考一下2021-12-12ASP.NET?Core?MVC中使用Tag?Helper組件
這篇文章介紹了ASP.NET?Core?MVC中使用Tag?Helper組件的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-02-02asp.net Google的translate工具翻譯 API
很久前的一天,我想使用這個東西,然后看了下,GooGle的Translate工具目前沒有公開API,還是一個逐漸完善的過程,另一方面,利用一段很小的程序就可以得到我們想要的效果。2008-12-12發(fā)布一個基于TokyoTyrant的C#客戶端開源項目
目前在網(wǎng)上關(guān)于TokyoCabinet(以下簡稱TC)和TokyoTyrant(以下簡稱TT)的資料已相對豐富了,但在.NET平臺上的客戶端軟件卻相對匱乏,因為做Discuz!NT企業(yè)版的關(guān)系,兩個月前開始接觸TC和TT,開始寫相關(guān)的客戶端代碼。2010-07-07動態(tài)組合SQL語句方式實現(xiàn)批量更新的實例
動態(tài)組合SQL語句方式實現(xiàn)批量更新的實例,需要的朋友可以參考一下2013-03-03