C#如何把base64码转换成图片保存到服务器


        /// <summary>
        /// 将Base64位码保存成图片
        /// </summary>
        /// <param name="UserPhoto">Base64位码</param>
        /// <returns></returns>
        public IHttpActionResult UploadImageByBase64String(ID UserPhoto)
        {
            if (!ModelState.IsValid)
            {
                LogHelper.WriteLog(ErrorPrompt.ValidationFailure);
                return BadRequest(ModelState);
            }
            string result;
            //图片路径
            string filePath = HttpContext.Current.Server.MapPath("~/" + @System.Configuration.ConfigurationManager.AppSettings["ImagePath"]);
            try
            {
                byte[] bt = Convert.FromBase64String(UserPhoto.id);//获取图片base64
                string fileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString();//年月
                string ImageFilePath = "/Image" + "/" + fileName;
                if (System.IO.Directory.Exists(HttpContext.Current.Server.MapPath(ImageFilePath)) == false)//如果不存在就创建文件夹
                {
                    System.IO.Directory.CreateDirectory(HttpContext.Current.Server.MapPath(ImageFilePath));
                }
                string ImagePath = HttpContext.Current.Server.MapPath(ImageFilePath) + "/" + System.DateTime.Now.ToString("yyyyHHddHHmmss");//定义图片名称
                File.WriteAllBytes(ImagePath + ".png", bt); //保存图片到服务器,然后获取路径  
                result = ImagePath + ".png";//获取保存后的路径
            }
            catch (Exception e)
            {
                throw e;
            }
            LogHelper.WriteLog(ErrorPrompt.Success);
            return Ok(result);
        }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM