用 XML 文件持久化和恢复图片信息

随便写写的一个例子:

// 保存图片到 XML 文件
        private void Form1_Load(object sender, System.EventArgs e)
        {
            Image img = Image.FromFile(@"E:\MyDocs\My Pictures\样品.jpg");
            System.IO.MemoryStream stream = new System.IO.MemoryStream();
            img.Save(stream, ImageFormat.Jpeg);
            byte[] b = stream.GetBuffer();
            string s = Convert.ToBase64String(b);

            XmlDocument doc = new XmlDocument();
            doc.AppendChild(doc.CreateElement("image"));
            XmlElement elmtData = doc.CreateElement("data");
            elmtData.InnerText = s;
            doc.DocumentElement.AppendChild(elmtData);
            doc.Save("test.xml");
        }

        // 从 XML 文件中读取图片信息
        private void button1_Click(object sender, System.EventArgs e)
        {
            XmlDocument doc = new XmlDocument();
            doc.Load("test.xml");
            string s = doc.DocumentElement.SelectSingleNode("data").InnerText;
            byte[] b = Convert.FromBase64String(s);
            MemoryStream stream = new MemoryStream(b);
            Bitmap bitmap = new Bitmap(stream);

            this.pictureBox1.Image = bitmap;
        }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏马洪彪

IniHelper——INI操作辅助类

使用INI配置文件,简单便捷。 该辅助工具类为C#操作INI文件的辅助类,源码在某位师傅的基础上完善的来,因为忘记最初的来源了,因此不能提及引用,在此深感遗憾,...

42070
来自专栏上善若水

CG008收费软件库Asprise ocr库识别图片验证码

14730
来自专栏用户2442861的专栏

rapidJson 的使用

1K30
来自专栏Porschev[钟慰]的专栏

CodeSmith 创建Ado.Net自定义模版(三)

CodeSmith 创建Ado.Net自定义模版(三) 接上一篇:   CodeSmith 创建Ado.Net自定义模版(二) 写数据访问层模版:Step3_D...

20680
来自专栏10km的专栏

jface databinding:重写doSetValue方法ComputedValue实现双向多对一的数据绑定

需求说明 如下是一个简单的测试对话框,我们希望当”起始日期”按钮为勾选时,数据对象dataBean的date属性为日期组件DateTime选择的值,否则为nul...

25090
来自专栏世玉的专栏

利用 Jquery + css 自制无限极下拉分类

网上相关例子基本都是 ztree,然后个人去看了看官网,看了半天没找到合适又简单的,ztree,由于界面不适合项目里面的,要是修改他的样式我还可能出现更多的错误...

21110
来自专栏李智的专栏

python pandas教程

25920
来自专栏葡萄城控件技术团队

Table-values parameter(TVP)系列之三: 利用Collection将其作为参数传给SP

一,回顾 上一部分讲述了“在ADO.NET中利用DataTable对象,将其作为参数传给存贮过程”。 通过DataTable实例,完成了两部分的内容: ...

18690
来自专栏跟着阿笨一起玩NET

LINQ 从 CSV 文件生成 XML

本文参考:http://msdn.microsoft.com/zh-cn/library/bb387090.aspx

9010
来自专栏逍遥剑客的游戏开发

WOW小地图生成

32530

扫码关注云+社区

领取腾讯云代金券