.net MVC 简单图片上传
生活随笔
收集整理的這篇文章主要介紹了
.net MVC 简单图片上传
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
主要完成的是在網頁上 上傳一張圖片到服務器
我搜出來的上傳文件代碼都特別復雜,對于初學者來說,先解決能上傳的問題才最重要,并不需要特別多的功能,僅適合不會上傳的初學者,大神請繞路,錯誤請指出,謝謝
view內容(由于是從項目中直接拷貝出來的,需要整理才可使用,看關鍵的就好了):
圖片:
代碼:
<!--這里的method 和 enctype 要照寫,不要忘寫或寫錯--><form action="ManageIcon" method="post" enctype="multipart/form-data" class="form-horizontal" role="form"><div class="col-sm-6"><label class="text-warning">請選擇尺寸為160*160的圖片</label><div class="row"><div class="col-md-10"><a href="#" class="thumbnail">@*<img src="@ViewBag.LoginedUser.Icon" class="img-responsive" alt="Cinque Terre" style="height:160px;width:160px">*@</a></div></div></div><div class="col-sm-6">
<!--注意這里,這里的input在后臺很關鍵,下面會有提示--><input name="filename" id="filename" type="file"/></div><div class="col-sm-12" style="margin-top:30px"><button type="submit" id="s" class="btn btn-primary" style="margin-left:30px">保存</button><button type="button" class="btn btn-default" style="margin-left:30px">取消</button></div></form>
項目目錄:
控制器代碼:
[HttpPost]public ActionResult ManageIcon(IEnumerable <HttpPostedFileBase>filename){foreach (var file in filename){//重命名,圖片在服務器上的名字string name = Path.GetFileName(file.FileName);string[] la = name.Split('.');string nameNew = DateTime.Now.ToFileTimeUtc().ToString(); nameNew += "."+la[la.Length];
//獲取項目根目錄string path = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
//這里獲取前臺傳來的流信息
using (Stream inputstream = file.InputStream){//在服務上創建文件流,事先已經在根目錄創建了\Images\Icons文件夾
FileStream fs = new FileStream(path+"Images\\Icons\\"+nameNew,FileMode.CreateNew,FileAccess.ReadWrite);
//文件讀寫
byte[] buffer=new byte[1024];int a = inputstream.Read(buffer,0,buffer.Length);while(a!=0){fs.Write(buffer,0,buffer.Length);a = inputstream.Read(buffer, 0, buffer.Length);}
//不寫這里可能會上傳不完整,如下圖fs.Flush();fs.Close();}}return View();}
?示例圖(第二張沒有上傳完整):
轉載于:https://www.cnblogs.com/Alan-Wei/p/5145386.html
總結
以上是生活随笔為你收集整理的.net MVC 简单图片上传的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 常用的开源框架
- 下一篇: 第一章 TestNG框架自动化简述