序列化与反序列化的问题

u010232129 2014-09-02 12:45:39
服务器端:
byte[] _gboModality = new byte[_maxPacket * 100];
clientSkt.Receive(_gboModality);
DataTable dtModality = iniModality(GetFisrtWord(_gboModality));
MemoryStream memory = new MemoryStream();
memory.Close();
clientSkt.Send(buff); // Socket实例化对象

客户端:
byte[] onlineBuff = new byte[_maxPacket * 100];
int byteCnt = _nws.Read(onlineBuff, 0, onlineBuff.Length);
MemoryStream memory = new MemoryStream(onlineBuff);//使用内存流来存这些byte[]
BinaryFormatter b = new BinaryFormatter();

DataTable dtModality = (DataTable)b.Deserialize(memory);
memory.Close();
调试的时候b.Deserialize(memory)报错了,如下:
System.Runtime.Serialization.SerializationException 类型异常。请大侠们指教!
...全文
173 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
u010232129 2014-09-02
  • 打赏
  • 举报
回复
其实我在服务器端序列化后,还是在服务器端反序列化是没有问题的,但是在客户端反序列化就爆出这个异常了。
u010232129 2014-09-02
  • 打赏
  • 举报
回复
6楼什么意思?
effun 2014-09-02
  • 打赏
  • 举报
回复
buff = memory.ToArray();
u010232129 2014-09-02
  • 打赏
  • 举报
回复
byte[] _gboModality = new byte[_maxPacket * 100]; clientSkt.Receive(_gboModality); DataTable dtModality = iniModality(GetFisrtWord(_gboModality)); MemoryStream memory = new MemoryStream(); BinaryFormatter b = new BinaryFormatter(); b.Serialize(memory, dtModality); byte[] buff = memory.GetBuffer(); memory.Close(); clientSkt.Send(buff); 我服务器端的序列化代码。。
u010232129 2014-09-02
  • 打赏
  • 举报
回复
2楼,你好,你的意思没有明白
u010232129 2014-09-02
  • 打赏
  • 举报
回复
1楼,你好,我在服务器端 BinaryFormatter b = new BinaryFormatter(); b.Serialize(memory, dtModality); byte[] buff = memory.GetBuffer(); memory.Close(); clientSkt.Send(buff);
安得权 2014-09-02
  • 打赏
  • 举报
回复
给 DataTable 起一个名字 就可以了
bdmh 2014-09-02
  • 打赏
  • 举报
回复
你确认你的流是序列化过的吗,如果不是,反序列化要出错
於黾 2014-09-02
  • 打赏
  • 举报
回复
强制转换就行了啊 datatable dt=o as datatable
u010232129 2014-09-02
  • 打赏
  • 举报
回复
很感谢上面的朋友们的解答,现在客户端object o = b.Deserialize(memory)能顺利执行了, 名称 值 类型 o {Table} object {System.Data.DataTable} 我该如何转换成DataTable类型?
於黾 2014-09-02
  • 打赏
  • 举报
回复
改用memory.toArray()

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧