本篇文章介紹了使用c#如何后臺處理圖片的幾種方法,具體代碼如下:
第一種: 將上傳圖片直接保存到本地
1
2
3
4
5
6
7
8
9
10
11
12
|
var supportedTypes = new [] { "jpg" , "jpeg" , "png" , "gif" , "bmp" }; var fileName = System.Web.HttpContext.Current.Request.Files[0].FileName; var fileExt = System.IO.Path.GetExtension(fileName).Substring(1); if (!supportedTypes.Contains(fileExt)) { return Json( new { msg = -1 }); } Random r = new Random(); var filename = DateTime.Now.ToString( "yyyyMMddHHmmss" ) + r.Next(10000) + "." + fileExt; var filepath = Path.Combine(Server.MapPath( "~/avatar/temp" ), filename); head.SaveAs(filepath); |
第二種:將圖片轉換為byte 類型
1
2
3
4
5
|
//filePath 圖片物理地址 FileStream fs = new FileStream(filepath, FileMode.Open); byte [] byData = new byte [fs.Length]; fs.Read(byData, 0, byData.Length); fs.Close(); |
第三種:將上傳圖片轉換為byte 類型
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
HttpPostedFile file = System.Web.HttpContext.Current.Request.Files[0]; if ((file == null )) { return Json( new { Success = false , Msg = "上傳圖片失敗" , Path = "" }); } else { System.Drawing.Image image = System.Drawing.Image.FromStream(file.InputStream); MemoryStream ms = new MemoryStream(); image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); byte [] byteData = new byte [ms.Length]; ms.Position = 0; ms.Read(byteData, 0, byteData.Length); ms.Close(); image.Dispose(); } } |
以上所述是小編給大家介紹的C# 后臺處理圖片的幾種方式,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!