base64编码的字符串与图片相互转换

#region 图片转为base64编码的字符串---ImgToBase64String
/// <summary>
/// 图片转为base64编码的字符串
/// </summary>
/// <param name="Imagefilename">图片地址</param>
/// <returns></returns>
public static List<publicAnnex> ImgToBase64String(string Imagefilename)
{
try
{
var AList = new List<publicAnnex>();
var Listarr = Imagefilename.Split(',');
foreach (var item in Listarr)
{
string uppath = System.Web.HttpContext.Current.Server.MapPath(item);
Bitmap bmp = new Bitmap(uppath);
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();
var A = new publicAnnex();
A.Content = Convert.ToBase64String(arr);
AList.Add(A);
}
return AList;
}
catch (Exception ex)
{
return null;
}
}
#endregion

#region base64编码的字符串转为图片---Base64StringToImage
/// <summary>
/// base64编码的字符串转为图片
/// </summary>
/// <param name="strbase64">字符串</param>
/// <returns></returns>
public static string Base64StringToImage(List<string> strbase64)
{
try
{
var AnnexAddress = "";
foreach (var item in strbase64)
{
string time = DateTime.Now.ToString("yyyyMMddHHmmssffff");
byte[] arr = Convert.FromBase64String(item);
MemoryStream ms = new MemoryStream(arr);
Bitmap bmp = new Bitmap(ms);
string uppath = System.Web.HttpContext.Current.Server.MapPath("~/UploadFiles/Image/") + "YMD_" + time + ".jpg";
bmp.Save(uppath);
ms.Close();
AnnexAddress += "/UploadFiles/Image/YMD_" + time + ".jpg,";
}
AnnexAddress.Substring(0, AnnexAddress.Length - 1);
return AnnexAddress;
}
catch (Exception ex)
{
return null;
}
}
#endregion

posted @ 2018-06-15 14:08  风中起舞  阅读(274)  评论(0编辑  收藏  举报