本篇文章介绍了使用c#如何后台处理图片的几种方法,具体代码如下:
第一种: 将上传图片直接保存到本地
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 类型
//filePath 图片物理地址
FileStream fs = new FileStream(filepath, FileMode.Open);
byte [] byData = new byte [fs.Length];
fs.Read(byData, 0, byData.Length);
fs.Close();
第三种:将上传图片转换为byte 类型
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# 后台处理图片的几种方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
dy("nrwz");