C# Base64Helper
标签:int position mod cat color div stream public oid
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;
}
}
C# Base64Helper
标签:int position mod cat color div stream public oid
原文地址:https://www.cnblogs.com/zclaude/p/9838076.html
评论