//图片 转为 base64编码的文本 private void button1_Click(object sender, EventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.Multiselect = true; dlg.Title = "选择要转换的图片"; dlg.Filter = "Image files (*.jpg;*.bmp;*.gif;*.png)|*.jpg*.jpeg;*.gif;*.bmp|AllFiles (*.*)|*.*"; if (DialogResult.OK == dlg.ShowDialog()) { for (int i = 0; i < dlg.FileNames.Length; i++) { ImgToBase64String(dlg.FileNames[i].ToString()); } } } //图片 转为 base64编码的文本 private void ImgToBase64String(string Imagefilename) { try { Bitmap bmp = new Bitmap(Imagefilename); this.pictureBox1.Image = bmp; FileStream fs = new FileStream(Imagefilename + ".txt", FileMode.Create); StreamWriter sw = new StreamWriter(fs); 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(); String strbaser64 = Convert.ToBase64String(arr); sw.Write(strbaser64); sw.Close(); fs.Close(); // MessageBox.Show("转换成功!"); } catch (Exception ex) { MessageBox.Show("ImgToBase64String 转换失败\nException:" + ex.Message); } } //base64编码的文本 转为 图片 private void button2_Click(object sender, EventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.Multiselect = true; dlg.Title = "选择要转换的base64编码的文本"; dlg.Filter = "txt files|*.txt"; if (DialogResult.OK == dlg.ShowDialog()) { for (int i = 0; i < dlg.FileNames.Length; i++) { Base64StringToImage(dlg.FileNames[i].ToString()); } } } //base64编码的文本 转为 图片 private void Base64StringToImage(string txtFileName) { try { FileStream ifs = new FileStream(txtFileName, FileMode.Open, FileAccess.Read); StreamReader sr = new StreamReader(ifs); String inputStr = sr.ReadToEnd(); byte[] arr = Convert.FromBase64String(inputStr); MemoryStream ms = new MemoryStream(arr); Bitmap bmp = new Bitmap(ms); //bmp.Save(txtFileName + ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg); //bmp.Save(txtFileName + ".bmp", ImageFormat.Bmp); //bmp.Save(txtFileName + ".gif", ImageFormat.Gif); //bmp.Save(txtFileName + ".png", ImageFormat.Png); ms.Close(); sr.Close(); ifs.Close(); this.pictureBox2.Image = bmp; if (File.Exists(txtFileName)) { File.Delete(txtFileName); } //MessageBox.Show("转换成功!"); } catch (Exception ex) { MessageBox.Show("Base64StringToImage 转换失败\nException:" + ex.Message); } }
相关文章
- c# 图片 与 BASE64 字符串 互相转换。
- C#中图片转换为Base64编码,Base64编码转换为图片
- 问题:C#将base64转换成二进制图片;结果:c# Base64编码和图片的互相转换代码
- C#编程中的Image/Bitmap与base64的转换及 Base-64 字符数组或字符串的长度无效问题 解决
- C#中图片转换为Base64编码,Base64编码转换为图片
- C#实现字符串与图片的Base64编码转换操作示例
- JavaScript 图片与Base64数据互相转换脚本
- C#中图片与BASE64码互相转换
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作