zoukankan      html  css  js  c++  java
  • c#.net 接收 base64 格式的数据并解析为图片

    using System;
    using System.Collections.Generic;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Net;
    using System.Net.Http;
    using System.Runtime.Serialization.Formatters.Binary;
    using System.Web;
    using System.Web.Http;
    
    namespace WebApi.Controllers
    {
        public class HomeController : ApiController
        {
            /// <summary>
            /// 接收Base64编码格式的图片
            /// </summary>
            public void Upload()
            {
                //获取base64编码的图片
                HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"];
                string text = context.Request.Form["file"];
    
                //获取文件储存路径
                string path = context.Request.MapPath("~/"); //获取当前项目所在目录
                string datetime = GetTimeStamp();
                string suffix = ".jpg"; //文件的后缀名根据实际情况
                string strPath = path + "App_Data/" + datetime + suffix;
                
                //获取图片并保存
                Base64ToImg(text.Split(',')[1]).Save(strPath);
            }
    
            //解析base64编码获取图片
            private Bitmap Base64ToImg(string base64Code)
            {
                MemoryStream stream = new MemoryStream(Convert.FromBase64String(base64Code));
                return new Bitmap(stream);
            }
    
            //获取当前时间段额时间戳
            public string GetTimeStamp()
            {
                TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
                return Convert.ToInt64(ts.TotalMilliseconds).ToString();
            } 
        }
    }
  • 相关阅读:
    Redis-配置文件与持久化
    Redis-搭建简单集群
    python实现简单的统计
    Redis-三种数据结构与事务
    String 类的理解
    针对Java面试来学习JAVA内容,让你事半功倍
    jdbc实现原理
    一朋友的Java基础面试题及答案(TCP/IP部分)
    Java Docker容器化技术详解
    Java新手开源项目集合
  • 原文地址:https://www.cnblogs.com/lovling/p/6638307.html
Copyright © 2011-2022 走看看