首先建立一個簡單的上傳頁面,如圖:後端
而後,在後臺編寫文件上傳方法:瀏覽器
1 /// <summary> 2 /// 上傳文件 3 /// </summary> 4 /// <returns></returns> 5 public void FileUp() 6 { 7 //獲取上傳文件 8 var file = Request.Files["fileName"]; 9 //根據上傳文件名獲取完整名稱 10 var uploadfileName = file.FileName; 11 //設置文件保存到文件夾的路徑 ("File"是這裏保存文件夾) 12 string filePath = "/File/" + uploadfileName; 13 //獲取文件的物理路徑 14 string AbsolutePath = Server.MapPath(filePath); 15 //保存上傳文件 16 file.SaveAs(AbsolutePath); 17 Response.Write("<script>alert('圖片上傳成 功');location.href='/Default/Index';</script>"); 18 }
上傳文件後,顯示:app
上傳成功後,會彈出提示框,跳回上傳頁面.post
主頁面形式能夠多變,就不在演示,主要說下後端代碼:spa
1 /// <summary> 2 /// 文件下載 3 /// </summary> 4 /// <param name="FileName">文件名稱</param> 5 /// <returns></returns> 6 public ActionResult DownLoad(string FileName) 7 { 8 string fileName = FileName;//客戶端保存的文件名 9 string filePath = Server.MapPath("/File/" + FileName);//路徑 10 11 FileStream fs = new FileStream(filePath, FileMode.Open);//以字符流的形式下載文件 12 byte[] bytes = new byte[(int)fs.Length]; 13 fs.Read(bytes, 0, bytes.Length); 14 fs.Close(); 15 Response.ContentType = "application/octet-stream"; 16 17 //通知瀏覽器下載文件而不是打開 18 Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); 19 Response.BinaryWrite(bytes); 20 Response.Flush(); 21 Response.End(); 22 return Json(""); 23 }
經過上述代碼,便可完成文件頁面下載.code