C#代码Base64编码转图片和图片转Base64的方法
- 作者:zhanhy ——来源:原创 ——在使用火车采集器和火车浏览器时如果遇到图片是Base64字符时,可能软件本身就不知道怎么处理了,这个时候就需要用到插件了,如果找官方开发的话500元起步。这个价格对咱们来说,就太不友好了。这里给两个插件代码,有需要的或者不懂的可以直接来用了。
使用C#代码保存使用Base64字符显示的图片代码:
/// <summary> /// 网页中的样式为 <img class="img" src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QBaRXhpZgAATU0AKgAAAAgABQMBAAUAAAABAAAASgMDAAEAAAABAAAAAFEQAAEAAAABAQAAAFERAAQAAAABAAAAAFESAAQAAAABAAAAAAAAAAAAAYagAACxjxxx"; /// 使用浏览器提取到src的内容,比如本次将结果存在“图片地址”字符串变量中,然后使用C#代码进行处理 /// </summary> /// <param name="stringDic"></param> /// <param name="listDic"></param> /// <param name="intDic"></param> public static void Execute(Dictionary<string, string> stringDic, Dictionary<string, List<string>> listDic, Dictionary<string, int> intDic) { string base64 = stringDic["图片地址"]; string[] arr = base64.Split(','); if (arr.Length != 2) throw new System.Exception("错误的base64图片格式"); base64 = arr[1]; byte[] bytes = Convert.FromBase64String(base64); string savedir = AppDomain.CurrentDomain.BaseDirectory + "图片路径目录//";//这里可以设置图片的路径地址,可以自己调整 if (!System.IO.Directory.Exists(savedir)) System.IO.Directory.CreateDirectory(savedir); System.IO.File.WriteAllBytes(savedir + System.IO.Path.GetRandomFileName() + ".jpg", bytes);//随机文件名保存 }
图片转换为Base64字符的代码:
public static void Execute(Dictionary<string, string>stringDic,Dictionary<string, List<string>> listDic,Dictionary<string, int> intDic) { System.Drawing.Bitmap bmp1 = new System.Drawing.Bitmap(stringDic["本地图片地址"]); using (MemoryStream ms1 = new MemoryStream()) { bmp1.Save(ms1, System.Drawing.Imaging.ImageFormat.Jpeg); byte[] arr1 = new byte[ms1.Length]; ms1.Position = 0; ms1.Read(arr1, 0, (int)ms1.Length); ms1.Close(); stringDic["img_base64"] = Convert.ToBase64String(arr1); } }
如果你还有其它疑问可以来本站搜索相关问题,这里会有你想要的答案:火车脚本网
你会喜欢下面的文章?

还有什么疑问可以提出来
- 全部评论(0)
还没有评论,快来抢沙发吧!