c#图片base64去转义字符_C#实现字符串与图片的Base64编码转换操作示例

本文实例讲述了C#实现字符串与图片的Base64编码转换操作。分享给大家供大家参考,具体如下:

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.IO;

using System.Drawing.Imaging;

namespace base64_img

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

//图片 转为 base64编码的文本

private void button1_Click(object sender, EventArgs e)

{

OpenFileDialog dlg = new OpenFileDialog();

dlg.Title = "选择要转换的图片";

dlg.Filter = "Image files (*.jpg;*.bmp;*.gif)|*.jpg*.jpeg;*.gif;*.bmp|AllFiles (*.*)|*.*";

if (DialogResult.OK == dlg.ShowDialog())

{

ImgToBase64String(dlg.FileName);

}

}

//图片 转为 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.Title = "选择要转换的base64编码的文本";

dlg.Filter = "txt files|*.txt";

if (DialogResult.OK == dlg.ShowDialog())

{

Base64StringToImage(dlg.FileName);

}

}

//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.pictureBox1.Image = bmp;

MessageBox.Show("转换成功!");

}

catch (Exception ex)

{

MessageBox.Show("Base64StringToImage 转换失败/nException:"+ex.Message);

}

}

}

}

PS:这里再为大家提供几款比较实用的base64在线编码解码工具供大家使用:

希望本文所述对大家C#程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值