首页 新闻 会员 周边

把Bitmap xml序列化过程中发生的怪怪问题,求解答。

0
悬赏园豆:50 [已关闭问题]
我想把一个图片通过xml序列化的形式转换成一个xml文件。<br><br>我代码是这么写的:<br>Bitmap bmp = new Bitmap("baby.jpg");<br>XmlSerializer ser = new XmlSerializer(typeof(Bitmap));<br>// XML序列化<br>stream = new FileStream(@"users.xml", FileMode.Create, FileAccess.Write, FileShare.Read);<br>ser.Serialize(stream, bmp);<br>stream.Close();<br><br>// XML反序列化<br>stream = new FileStream(@"users.xml", FileMode.Open);<br>MyObject obj2 = (MyObject)ser.Deserialize(stream);<br>tream.Close();<br><br>其中,xml序列化部分没有异常,但一个28k的图片,序列化后得到的xml文件才1k,明显不对,而且用这个xml文件进行反序列化的时候MyObject obj2 = (MyObject)ser.Deserialize(stream);这行代码会出现异常,提示:XML 文档(4, 3)中有错误。参数无效。<br><br>开始序列化得到的xml文件内容是:<br>&lt;?xml version="1.0"?&gt;<br>&lt;Bitmap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;<br>&nbsp; &lt;Palette /&gt;<br>&lt;/Bitmap&gt;<br><br><br>请问问题处在哪里,如何修改?<br>
i.Posei的主页 i.Posei | 初学一级 | 园豆:125
提问于:2008-07-24 17:33
< >
分享
其他回答(3)
0
可以这么做,把图片转换成base64的字符串,然后写到文件中,反序列化时执行相反操作。 下面有一段序列化的代码: http://west263.com/info/html/wangluobiancheng/Xmlbiancheng/20080224/15848.html
玉开 | 园豆:8822 (大侠五级) | 2008-07-24 17:44
0
为啥 不用二进制序列化~~~
沙加 | 园豆:3680 (老鸟四级) | 2008-07-25 09:39
0
所谓的可序列化, 是针对 二进制的 XML序列化 用的是另一个关键字
G yc {Son of VB.NET} | 园豆:2006 (老鸟四级) | 2008-07-26 18:12
0
Jared.Nie | 园豆:1940 (小虾三级) | 2008-07-27 08:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册