重點:
1.PostedFile屬性
PostFile.ContentLength:可以取得上傳檔案大小
後置程式碼(這支程式包含判斷檔名是否重複以及限制檔案大小)
protected void Button1_Click(object sender, EventArgs e)
{
//宣告保存檔案路徑
string savePath = "C:\\ASP.FileUpload\\";
//如果user有選擇檔案
if (FileUpload1.HasFile)
{
//取得上傳檔案大小
int fileSize = FileUpload1.PostedFile.ContentLength;
//取得user上傳檔案檔名
string fileName = FileUpload1.FileName;
//要確認是否有檔案同名
string pathToCheck = savePath + fileName;
string tempfileName = "";
//偵測是否有同樣檔名的檔案
if (System.IO.File.Exists(pathToCheck))
{
int my_counter = 2;
//如果有就把相同檔名的檔案改掉,因為可能不只有一個檔名相同而已,所以用while相同都要改,然後數字會遞增去改
while (System.IO.File.Exists(pathToCheck))
{
tempfileName = my_counter.ToString() + "-" + fileName;
pathToCheck = savePath + tempfileName;
my_counter += 1;
}
//把修改好的檔名丟給filename
fileName = tempfileName;
Response.Write("由於檔名發生衝突,故檔名修改如下:" + fileName);
}
//如果上傳檔案大小,小於0.5M,才存檔案
if (fileSize < 500000)
{
//savePath = savePath + filename
savePath += fileName;
//將檔案保存在設定路徑中
FileUpload1.SaveAs(savePath);
Response.Write("檔案上傳成功");
}
//超過限制上傳檔案大小
else
{
Response.Write("檔案大小太大囉!");
}
}
//沒有選擇檔案
else
{
Response.Write("未選擇檔案");
}
}
留言列表