這是asp.net實現文件上傳(chuan)的(de)(de)代碼程(cheng)序。只(zhi)是一個示例(li),你可以根據自(zi)己的(de)(de)要(yao)求進(jin)行修改(gai)。
文件(jian)上傳中要注意安全問題。過濾(lv)文件(jian)類型,不能夠允許用(yong)戶上傳動(dong)態腳(jiao)本(asp,asp.net,php,cgi,exe等文件(jian)。否則你的(de)網(wang)站(zhan)將存在安全問題。容易被黑掉(diao)
<%@ page Language = "C#"%>
<%@ Import Namespace = "System.IO" %>
public void uploadFile(object sender , EventArgs E) {
//檢查(cha)上傳文件不為空
if(inputFile.PostedFile.ContentLength > 0) {
//設定(ding)上傳文件的保存(cun)路徑
string strSaveDir = "./upload/";
string strName = inputFile.PostedFile.FileName;
//取得文件名(抱括路徑)里最(zui)后(hou)一個"."的索引
int intExt = strName.LastIndexOf(".");
//取得(de)文件擴展名
string strExt = strName.Substring(intExt);
//這里我自動根(gen)據日期和文件大(da)小不(bu)同(tong)為文件命名,確保文件名不(bu)重復(fu)
/*
DateTime datNow = DateTime.Now;
string strNewName = datNow.DayOfYear.ToString() + inputFile.PostedFile.ContentLength.ToString() + strExt; */
//取得文件名(ming)(包括路徑)里(li)最后一個"\"的索引(yin)
int intPath = strName.LastIndexOf("\\");
//取得文件名(不包括路徑(jing))
string strNewName = strName.Substring(intPath);
//保(bao)存文件(jian)到你(ni)所要的目錄,這(zhe)里(li)是(shi)IIS根目錄下(xia)的upload目錄.你(ni)可以(yi)改(gai)變.
//注意: 我(wo)這里(li)用(yong)Server.MapPath()取當(dang)前(qian)文件的絕對目錄.在asp.net里(li)"\"必須(xu)用(yong)"\\"代替
inputFile.PostedFile.SaveAs(Server.MapPath(strSaveDir + strNewName));
//得(de)到這個文件的相關(guan)屬性:文件名,文件類型,文件大小
labelUpResult.Text = "上傳成(cheng)功(gong)!";
labelFileName.Text = "文(wen)件源(yuan):" + strName;
labelFileExt.Text = "文件類型(xing):" + inputFile.PostedFile.ContentType + "( " + strExt + " )";
labelFileSize.Text = "文(wen)件大小:" + (inputFile.PostedFile.ContentLength / 1024).ToString() + " K Byte(s)";
} else {
labelUpResult.Text = "請選擇你要上傳的文件!";
labelFileName.Text = "";
labelFileExt.Text = "";
labelFileSize.Text = "";
}
}
99�þù��������뾫Ʒ���,���� У ���� ����
?