欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C# 后台处理图片的几种方法

程序员文章站 2022-03-26 08:41:08
本篇文章介绍了使用c#如何后台处理图片的几种方法,具体代码如下: 第一种: 将上传图片直接保存到本地 var supportedtypes = new...

本篇文章介绍了使用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# 后台处理图片的几种方式,希望对大家有所帮助