在分析完成之前就遇到流结尾
我在做网络传输客户端反序列化时出现错误,错误提示:在分析完成之前就遇到流结尾
序列化和反序列化的代码如下:期待ing...
// 二进制序列化
public static byte[] SerializeBinary(object obj)
{
if (obj == null)
return new byte[] { };
BinaryFormatter se = new BinaryFormatter();
MemoryStream memStream = new MemoryStream();
se.Serialize(memStream, obj);
byte[] bobj = memStream.ToArray();
memStream.Close();
return bobj;
}
// 二进制反序列化
public static object DeserializeBinary(byte[] bobj)
{
if (bobj == null || bobj.Length == 0)
return new object[] { };
MemoryStream memStream = new MemoryStream(bobj);
memStream.Position = 0;
BinaryFormatter de = new BinaryFormatter();
object newobj = null;
memStream.Seek(0, SeekOrigin.Begin);
newobj = de.Deserialize(memStream);
memStream.Close();
memStream.Dispose();
return newobj;
}
------解决方案--------------------这个问题有可能是粘包造成的!或者是你的程序处理逻辑有问题!自己好好检查一下自己的代码,应该和你的正反序列化没有关系!
------解决方案--------------------帮顶,我也想知道。。。
------解决方案--------------------我前两天用时也遇到这个错误提示,当时是因为反序列化时流中无数据!你打个断点看看你反序列化时流中的数据有没?
不过看着好像没问题!