ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之上傳文件實(shí)現(xiàn)代碼
這部分功能涉及到的控件主要有兩個(gè):一個(gè)是(ID)為WebFile的File Field控件,用來(lái)瀏覽上傳文件路徑;另一個(gè)是(ID)為btnUpLoad的上傳按鈕,單擊它完成文件上傳。
2、代碼實(shí)現(xiàn)
在“設(shè)計(jì)”面板中雙擊btnUpLoad按鈕,為其添加事件處理,其代碼如下所示:
private void BtnUpload_Click(object sender, System.EventArgs e)
{
if(WebFile.PostedFile.FileName=="")
{
Info.Text="請(qǐng)先選擇要上傳的文件";
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); //重新載入當(dāng)前目錄
}
catch
{
Info.Text="上傳文件失敗,請(qǐng)與管理員聯(lián)系";
}
}
首先要判斷用戶(hù)是否選擇了要上傳的文件,這可以通過(guò)WebFile.PostedFile.FileName屬性來(lái)得到。需要說(shuō)明的是:WebFile是一個(gè)File Field控件對(duì)象,該控件屬于HtmlInputFile類(lèi),HtmlInputFile.PostedFile方法用來(lái)獲取對(duì)客戶(hù)端上載文件的訪(fǎng)問(wèn)。
在確定用戶(hù)選擇了要上傳的文件后,就要對(duì)其上傳的路徑進(jìn)行設(shè)置。首先要得到該文件的文件名。由于用戶(hù)提供的是一個(gè)客戶(hù)端完整路徑,需要用Split()方法按“//”分隔符進(jìn)行分割,結(jié)果保存在一個(gè)數(shù)組里。如:“C://UserDir//Chapter1//Ch1.doc”可以被分割為四部分,其最后一部分(數(shù)組最后一項(xiàng))正是需要的文件的名稱(chēng)。在上面的程序中,F(xiàn)ileName[FileName.Length-1]即為用戶(hù)上傳的文件名。
得到上傳路徑后就可以進(jìn)行上傳,這里用到PostedFile.SaveAs()方法。完成上傳后,調(diào)用LoadDir()方法就可以顯示出剛才上傳的文件名。
運(yùn)行時(shí)單擊“瀏覽”按鈕,將出現(xiàn)如圖16-5所示的對(duì)話(huà)框。選定文件后,單擊“確定”按鈕完成文件上傳工作。

圖“瀏覽”要上傳的文件
- ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之文件夾實(shí)現(xiàn)
- asp.net 網(wǎng)絡(luò)硬盤(pán)實(shí)現(xiàn)分析
- ASP.NET+XML打造網(wǎng)絡(luò)硬盤(pán)原理分析
- ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之兩重要類(lèi)代碼
- ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之查看文件夾實(shí)現(xiàn)代碼
- ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之下載或在線(xiàn)查看實(shí)現(xiàn)代碼
- ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤(pán)之刪除文件夾實(shí)現(xiàn)代碼
- Asp.net mvc實(shí)時(shí)生成縮率圖到硬盤(pán)
相關(guān)文章
ASP.NET Core依賴(lài)注入系列教程之服務(wù)的注冊(cè)與提供
這篇文章主要給大家介紹了關(guān)于ASP.NET Core依賴(lài)注入系列教程之服務(wù)的注冊(cè)與提供的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧2018-11-11
基于.Net實(shí)現(xiàn)前端對(duì)話(huà)框和消息框
這篇文章主要介紹了基于.Net實(shí)現(xiàn)前端對(duì)話(huà)框和消息框的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07
ASP.NET Core啟動(dòng)地址配置方法及優(yōu)先級(jí)順序
這篇文章主要介紹了ASP.NET Core啟動(dòng)地址配置方法及優(yōu)先級(jí)順序,如果在同一臺(tái)機(jī)器上運(yùn)行多個(gè)ASP.NET Core實(shí)例,使用默認(rèn)值肯定不合適,下面我們一起進(jìn)入文章了解具體內(nèi)容吧2022-03-03
ASP.NET?Core使用EF?SQLite對(duì)數(shù)據(jù)庫(kù)增刪改查
這篇文章介紹了ASP.NET?Core使用EF?SQLite對(duì)數(shù)據(jù)庫(kù)增刪改查的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01
asp.net 不用組件的URL重寫(xiě)(適用于較大型項(xiàng)目)
網(wǎng)上很多關(guān)于url重寫(xiě)的教程都推薦下載某某某組件, 我個(gè)人不喜歡這樣,即使是M$的組件也一樣,因?yàn)槲覀兏沙绦騿T的,越貼近真相越好。那么我也寫(xiě)一個(gè)關(guān)于url重寫(xiě)的文章,希望對(duì)和我一樣有個(gè)性的coder們有點(diǎn)幫助。2009-04-04
.NET中獲取Access新增記錄Id怪現(xiàn)象解決方法
寫(xiě)了一個(gè)函數(shù)獲取Access表中指定用戶(hù)Id,要求當(dāng)傳入的用戶(hù)名不存在時(shí),則在表中新增一條記錄并返回Id2012-03-03
.NET Core基于Generic Host實(shí)現(xiàn)后臺(tái)任務(wù)方法教程
這篇文章主要給大家介紹了關(guān)于.NET Core基于Generic Host實(shí)現(xiàn)后臺(tái)任務(wù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11
ASP.NET Core 配置和使用環(huán)境變量的實(shí)現(xiàn)
這篇文章主要介紹了ASP.NET Core 配置和使用環(huán)境變量的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
asp.net實(shí)現(xiàn)數(shù)據(jù)從DataTable導(dǎo)入到Excel文件并創(chuàng)建表的方法
這篇文章主要介紹了asp.net實(shí)現(xiàn)數(shù)據(jù)從DataTable導(dǎo)入到Excel文件并創(chuàng)建表的方法,涉及asp.net基于DataTable的數(shù)據(jù)庫(kù)及excel操作相關(guān)技巧,需要的朋友可以參考下2015-12-12

