博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# Base64Helper
阅读量:5786 次
发布时间:2019-06-18

本文共 2506 字,大约阅读时间需要 8 分钟。

原文:

public static class Base64Helper    {        ///         /// base64字符保存图片到本        ///         /// 保存的图片完整路径        /// base64字符串        public static void Base64SaveImage(string filePath, string base64String)        {            try            {                //如果base64是通过http传过来的,要注意其中的%、,、空格等转换,C#规定base64的长度必须是4的倍数,有个别语言是2的倍数,补上==。                base64String = base64String.Trim().Replace("%", "").Replace(",", "").Replace(" ", "+");                if (base64String.Length % 4 != 0)                {                    base64String += "==";                }                byte[] arr2 = Convert.FromBase64String(base64String);                using (MemoryStream ms2 = new MemoryStream(arr2))                {                    System.Drawing.Bitmap bmp2 = new System.Drawing.Bitmap(ms2);                    bmp2.Save(filePath, System.Drawing.Imaging.ImageFormat.Jpeg);                    bmp2.Dispose();                }            }            catch (Exception ex)            {                LogHelper.WriteLog("图片保存异常:" + ex.ToString());            }        }        public static string ImgToBase64String(string Imagefilename)        {            try            {                Bitmap bmp = new Bitmap(Imagefilename);                MemoryStream ms = new MemoryStream();                bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);                byte[] arr = new byte[ms.Length];                ms.Position = 0;                ms.Read(arr, 0, (int)ms.Length);                ms.Close();                return Convert.ToBase64String(arr);            }            catch (Exception ex)            {                LogHelper.WriteLog("图片读取异常:" + ex.ToString());                return null;            }        }        public static string ImageToBase64(string path)        {            byte[] bytes = GetPictureData(path);            string base64 = Convert.ToBase64String(bytes);            return base64;        }        public static Bitmap Base64ToImage(string base64)        {            byte[] arr = Convert.FromBase64String(base64);            MemoryStream ms = new MemoryStream(arr);            Bitmap bmp = new Bitmap(ms);            ms.Close();            return bmp;        }        public static byte[] GetPictureData(string imagePath)        {            FileStream fs = new FileStream(imagePath, FileMode.Open);            byte[] byData = new byte[fs.Length];            fs.Read(byData, 0, byData.Length);            fs.Close();            return byData;        }    }

 

转载地址:http://wityx.baihongyu.com/

你可能感兴趣的文章
js 随机数
查看>>
(转)jenkins构建触发器定时任务Build periodically和Poll SCM
查看>>
在使用MVC对象传参的心得
查看>>
Android 安全退出应用程序的方法总结
查看>>
var、let、const区别
查看>>
ASP.NET安全问题--ASP.NET安全架构
查看>>
【Oracle】oracle之listagg分析函数
查看>>
f5创建VS
查看>>
cobbler 修改 distro_signatures.json
查看>>
学完微型服务器(Tomcat)对其工作流程的理解,自己着手写个简单的tomcat
查看>>
JSONOBJECT
查看>>
小Z的课堂检测(test)
查看>>
C#学习笔记四(LINQ,错误和异常,异步编程,反射元数据和动态编程)
查看>>
从topcoder赚钱的方法
查看>>
Resignation letter
查看>>
Jmeter常用函数
查看>>
LR监控Windows资源
查看>>
linux 权限
查看>>
01-计算机硬件
查看>>
转载:写更少的代码
查看>>