• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > c# Base64编码和图片的互相转换代码

c# Base64编码和图片的互相转换代码

作者:sjdev 字体:[增加 减小] 来源:互联网 时间:2017-05-28

sjdev 通过本文主要向大家介绍了c#base64编码,c#base64解码,c#base64,c#base64加密解密,c#base64加密等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

事出有因

         我们已经做了一个编辑器,这个编辑器可以以xml格式存储一些信息。在存储图片信息时我们碰到了一些问题。我们本来在xml信息中存储的是图片的路径,然而一旦客户把这个信息copy到其他电脑上而没有同时copy相关的图片时,就会出现一些问题。
         后来,我们把图片数据转换为Base64编码,替代了原先存储图片路径的方式。

转换流程

将图片转化为Base64字符串的流程是:首先使用BinaryFormatter将图片文件序列化为二进制数据,然后使用Convert类的ToBase64String方法。将Base64字符串转换为图片的流程正好相反:使用Convert类的FromBase64String得到图片文件的二进制数据,然后使用BinaryFormatter反序列化方法。

/// <summary>
    /// 将图片数据转换为Base64字符串
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void ToBase64(object sender, EventArgs e)
    {
      Image img = this.pictureBox.Image;
      BinaryFormatter binFormatter = new BinaryFormatter();
      MemoryStream memStream = new MemoryStream();
      binFormatter.Serialize(memStream, img);
      byte[] bytes = memStream.GetBuffer();
      string base64 = Convert.ToBase64String(bytes);
      this.richTextBox.Text = base64;
    }

    /// <summary>
    /// 将Base64字符串转换为图片
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void ToImage(object sender, EventArgs e)
    {
      string base64 = this.richTextBox.Text;
      byte[] bytes = Convert.FromBase64String(base64);
      MemoryStream memStream = new MemoryStream(bytes);
      BinaryFormatter binFormatter = new BinaryFormatter();
      Image img = (Image)binFormatter.Deserialize(memStream);
      this.pictureBox.Image = img;
    }
</div>

运行结果

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C#解码base64编码二进制数据的方法
  • c# Base64编码和图片的互相转换代码
  • C# Base64编码函数

相关文章

  • 2017-05-28C# yield在WCF中的错误使用(二)
  • 2017-05-28c#与WMI使用技巧集第1/2页
  • 2017-05-28浅析C# 中的类型系统(值类型和引用类型)
  • 2017-05-28C#使用浏览按钮获得文件路径和文件夹路径的方法
  • 2017-05-28C#7.0中新特性汇总
  • 2017-05-28c# ArrayList的使用方法小总结
  • 2017-05-28C#自定义控件添加右键菜单的方法
  • 2017-05-28C#中遍历DataSet数据集对象实例
  • 2017-05-28C#如何通过RFC连接sap系统
  • 2017-05-28C#浮点数的表示和基本运算

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C# IFF图形结构解析代码
    • 详解C#中的属性和属性的使用
    • c#调用c++方法介绍,window api
    • C#匿名方法与Delegate类型转换错误分析
    • C#直线的最小二乘法线性回归运算实例
    • C#递归算法寻找数组中第K大的数
    • C#实现在网页中根据url截图并输出到网页的方法
    • jQuery uploadify在谷歌和火狐浏览器上传失败的解决方案
    • C#实现的SN快速输入工具实例
    • C#多线程编程详解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有