C# WPF Image控件下对于Base64的转化显示
2021-06-08 08:05
标签:cat href api stack www catch source ima 包含 本文对图片如何转化成base64不做描述,我们可以从很多途径了解到转化办法。却很少有博客提到怎么在WPF的Image控件中显示图片。 随便拿一张图片转一下试一试: 额。好长....取前面一部分吧 C#对于这段数据,通常的做法是: 抛出了异常: 明明是正常转化得来的,为什么却是不合法的字符串?其实这里还需要一点处理,就算把头部信息去掉! 这样就可以成功转化了。现在来看怎么显示在Image里面。 答案:https://stackoverflow.com/questions/593388/how-do-i-read-a-base64-image-in-wpf 没啥太花里胡哨的东西。 C# WPF Image控件下对于Base64的转化显示 标签:cat href api stack www catch source ima 包含 原文地址:https://www.cnblogs.com/lonelyxmas/p/10703861.html算作前言
对于base64的合法性
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAA9CAMAAADlJaswAAAAe1BMVE.....
try
{
byte[] streamBase = Convert.FromBase64String(base64);
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
输入的不是有效的 Base-64 字符串,因为它包含非 Base-64 字符、两个以上的填充字符,或者填充字符间包含非法字符。
//base64 = base64.Replace("data:image/png;base64,", "").Replace("data:image/jgp;base64,", "").Replace("data:image/jpg;base64,", "").Replace("data:image/jpeg;base64,", "");//将base64头部信息替换
string imagebase64 = base64.Substring(base64.IndexOf(",") + 1);
WPF中Image显示
string imagebase64 = base64.Substring(base64.IndexOf(",") + 1);
byte[] streamBase = Convert.FromBase64String(imagebase64);
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.StreamSource = new MemoryStream(streamBase);
bi.EndInit();
Image.Source = bi;
文章标题:C# WPF Image控件下对于Base64的转化显示
文章链接:http://soscw.com/index.php/essay/92129.html