在下面的内容中,我试图对存储在亚马逊中的Java序列化文本文件与c#反序列化对象之间进行某种类型的迁移。我的想法是将Java中的有符号字节转换为.net中的无符号字节!但是不幸的是它不起作用!这是有效的主意吗?我该如何解决?

using (Stream amazonStream = getObjRespone.ResponseStream)
{
    List<sbyte> buffer = new List<sbyte>();
    int onebyte = 0;
    while (onebyte != -1)
    {
        onebyte = amazonStream.ReadByte();
        if (onebyte != -1)
            buffer.Add((sbyte)onebyte);
    }
    byte[] dest = Array.ConvertAll(buffer.ToArray(), item => (byte)item);
    Stream stream = new MemoryStream(dest);
     object obj=  binaryFormatter.Deserialize(stream);
    //byte[] b=  (byte[]) buf.ToArray();
}

最佳答案

为此使用protobuf或其他一些跨平台序列化(xml,json)

10-08 08:45