在XML、文本文件中存储图片的解决方案.docx_第1页
在XML、文本文件中存储图片的解决方案.docx_第2页
在XML、文本文件中存储图片的解决方案.docx_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

在XML、文本文件 中存储图片的解决方案思想:图片先转换为 二进制文件 再经 Base64编码 存储在文件中的,由于转换成二进制文件后,数据存储空间变大,利用Base64具有的压缩空间优势,使转换后的文本数据只是原数据大小的4/3倍(大概),图片量大的话,节省不少内存空间。同理,通过原先Base64编码过的文本数据解码成二进制文件后再转换为图片对象。代码如下:/using System.IO; /using System.Drawing; /using System.Drawing.Imaging; /图片转换为字符串 private string ImageToString(Image img, string ImgFormat)/参数ImgFormat是指定图片的类型 /定义一个内存流对象 tryusing (MemoryStream memoryStream = new MemoryStream()/把Image以ImageFormat图片类型保存为二进制格式img.Save(memoryStream, ReImgFormat(ImgFormat);/定义b存放二进制数据 byte b = memoryStream.GetBuffer();/将二进制数据转换为Base64编码字符串 string PicString = Convert.ToBase64String(b);/关闭内存流和清空变量 memoryStream.Close();b = null;/返回转换后的字符串 return PicString;catch (Exception ex)Console.WriteLine(ex.Message);return ; /返回空字符串 /字符串转换为图片 private Image StringToImage(string PicString)if (PicString.Equals()/字符串为空的时候返回空对象 return null;elsetryusing (MemoryStream memoryStream = new MemoryStream(Convert.FromBase64String(PicString)Image img = new System.Drawing.Bitmap(memoryStream);memoryStream.Close();return img;catch (Exception ex)Console.WriteLine(ex.Message);return null; /返回空对象 /返回图片的类型对象 private ImageFormat ReImgFormat(string imgformat)switch (imgformat.ToLower()case jpg:return ImageFormat.Jpeg;case gif:return ImageFormat.Gif;case bmp:return ImageFormat.Bmp;case png:re

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论