我正在尝试将我在 abyte[]
中的对象转换为对象。我试过使用我在网上找到的这段代码:
object byteArrayToObject(byte[] bytes)
{
try
{
MemoryStream ms = new MemoryStream(bytes);
BinaryFormatter bf = new BinaryFormatter();
//ms.Position = 0;
return bf.Deserialize(ms,null);
}
catch
{
return null;
}
}
SerializationException:“在解析完成之前遇到流结束。”。
我ms.Position = 0
当然也尝试过使用未注释的行...
bytes[]
只有 8 个字节长,每个字节都不是null
.
建议?
[编辑]
byte[] 是从 C++ 程序使用类似于以下内容的东西写入二进制文件的
void WriteToFile (std::ostream& file,T* value)
{
file.write(reinterpret_cast<char*>(value), sizeof(*T))
}
其中 value 可能是许多不同的类型。我可以使用 BitConverter 从文件中转换为一些对象,但是 BitConverter 没有涵盖的任何内容我都做不到..