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