c#序列化问题
lqmzn 2010-07-28 08:29:22 本人做了一个小程序.java做服务器端,序列化对象.然后c#做客户端.反序列化接收.双方都用的是socket,现在java序列化过来以后.
java序列化代码如下:
TestSerial se=new TestSerial();
sout.write
sout.writeObject(se);
sout.flush();
sout.close();
我用C#是这样接收的:
socket.Receive(bytesReceive);
SetText(bytesReceive);
socket.Shutdown(SocketShutdown.Both);
socket.Close();
private void SetText(byte[] data)
{
//反序列化
BinaryFormatter bf = new BinaryFormatter();
object obj = null;
using (Stream stream = new MemoryStream(bb, 0, bb.Length))
{
obj = bf.Deserialize(stream);
}
}
总是报一个错误:二进制流"0"不包含有效的BinaryHeader......
网上查了说是和版本有关.这种问题具体应该改怎么解决啊?