《c#字符串篇》base64转图片

Base64转换图片

原文链接:https://blog.csdn.net/lilinoscar/article/details/79238070
将base64字符串转换为Image图片,现在移动端手机上,有些H5页面上传图片,就是将图片转换为base64位,可以选择直接存储这个字符串,也可转换本地图片,代码入下:

var base64 = "";//这里存base64的字符串
base64 = base64.Replace("data:image/png;base64,", "").Replace("data:image/jgp;base64,", "").Replace("data:image/jpg;base64,", "").Replace("data:image/jpeg;base64,", "");//将base64头部信息替换
byte[] bytes = Convert.FromBase64String(base64);
MemoryStream memStream = new MemoryStream(bytes);
Image mImage = Image.FromStream(memStream);

将图片存为本地:

 Bitmap bp = new Bitmap(mImage);
 MemoryStream ms = new MemoryStream();
 bp.Save(DateTime.Now.ToString("yyyyMMddHHss") + ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg);//注意保存路径

不是有效的Base-64字符串

输入的不是有效的 Base-64 字符串,因为它包含非 Base-64 字符、两个以上的填充字符,或者填充字符间包含非法字符
原文链接:https://blog.csdn.net/cmhdl521/article/details/88745855

C# 做上传文件的时候,需要替换掉这些字符:

data:image/jpeg;base64
data:image/png;base64
data:image/gif;base64

不然会报错:输入的不是有效的 Base-64 字符串,因为它包含非 Base-64 字符、两个以上的填充字符,或者填充字符间包含非法字符

字符串太大截断尾部

关于CString初始化时提示字符串太大的解决

原文链接:https://blog.csdn.net/winnyrain/article/details/70312907

问题代码:

CString str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUV”;

反正很长,超过2048字节的时候,编译器会提示:

error C2026: 字符串太大,已截断尾部字符
这种情况其实并不是CString引起的,而是因为编译器在读取一行代码的时候,限制了超长代码行。

解决方案:

将字符串换行书写:

CString str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

类似这样即可。

posted @   Fusio  阅读(712)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示
目录导航
目录导航
《c#字符串篇》base64转图片
Base64转换图片
不是有效的Base-64字符串
字符串太大截断尾部
发布于 2023-04-20 10:14