私が持っているオブジェクトをオブジェクトに変換しようとしてbyte[]
います。オンラインで見つけたこのコードを使用してみました:
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 がカバーしていないものはすべてできません..