API上傳檔案
阿新 • • 發佈:2020-07-22
1.通過FileName的副檔名判斷是否非法檔案或者允許上傳的檔案型別
2.利用ContentLength 控制上傳檔案的大小限制
3.InputStream物件可以轉換為byte[]陣列 上傳OSS等操作
附上完整程式碼如下:
var file = HttpContext.Current.Request.Files[0]; //獲取檔案物件 string fileName = file.FileName; //原檔名 string fileExt = fileName.Substring(fileName.LastIndexOf("."));//獲取副檔名 //檢測上傳檔案是否合法 if (!FileHelper.CheckFileExt(fileExt)) {throw new AppInvalidException("請選擇合法的檔案進行上傳!"); } string newFileName= DateTime.Now.ToString("yyyyMMddHHmmssffff") + fileExt; //隨機生成新的檔名 string path = Path.Combine(Server.MapPath("~/UploadFile"), newFileName); //生成新的檔案路徑 file.SaveAs(path); //儲存檔案
view:
紅圈中需要注意以下幾點:
1.必須設定enctype="multipart/form-data"
2.用的是file檔案控制元件
3.必須要用form post 提交