c# | base64图片转文件
2021-05-15 23:27
标签:class load sub 博文 mod 方法 参考 log tac 方法如下: 这是很久以前参考别人并稍微修改了一点,博文地址忘了,如果有知道的原博文的,可以提醒我一下,我会加上原博文地址的 c# | base64图片转文件 标签:class load sub 博文 mod 方法 参考 log tac 原文地址:https://www.cnblogs.com/wjzjy/p/14668170.html public string Base64StringToFile(string base64String, string fileName)
{
//文件后缀
string suffix = "";
try
{
//文件保存路径
string fileFullPath = @"C:\Users\wenjingzhi\Desktop\MyBlog\UploadPictures";
//如果没有文件夹,则创建
if (!Directory.Exists(fileFullPath))
{
Directory.CreateDirectory(fileFullPath);
}
//获取文件后缀
string i = base64String.Trim().Substring(0, base64String.IndexOf(",") + 1);
suffix = i.Substring(i.IndexOf("/") + 1, i.IndexOf(";") - i.IndexOf("/") - 1);
//将,以前的多余字符串删除
string strbase64 = base64String.Trim().Substring(base64String.IndexOf(",") + 1);
//将指定的字符串(它将二进制数据编码为 Base64 数字)转换为等效的 8 位无符号整数数组
MemoryStream stream = new MemoryStream(Convert.FromBase64String(strbase64));
//文件读写
FileStream fs = new FileStream(fileFullPath + "\\" + fileName + "." + suffix, FileMode.OpenOrCreate, FileAccess.Write);
//将流写入数组
byte[] b = stream.ToArray();
fs.Write(b, 0, b.Length);
fs.Close();
}
catch (Exception e)
{
System.Diagnostics.Trace.WriteLine("异常类型: \t" + e.GetType());
System.Diagnostics.Trace.WriteLine("异常描述:\t" + e.Message);
System.Diagnostics.Trace.WriteLine("异常方法:\t" + e.TargetSite);
System.Diagnostics.Trace.WriteLine("异常堆栈:\t" + e.StackTrace);
}
return fileName + "." + suffix;
}