我有一個字節流,我需要解析成一個結構,我也需要能夠解析結構回字節流。解析一個字節流到一個結構/類
下面是我想要使用BitConverter解析數值的示例。我希望有一個更有效的方法來做到這一點,因爲我的結構是巨大的!
ref struct TestStruct
{
int TestInt;
float TestFloat;
};
int main(array<System::String ^> ^args)
{
// populating array - just for demo, it's really coming from a file
array<unsigned char>^ arrBytes = gcnew array<unsigned char>(8);
Array::Copy(BitConverter::GetBytes((int)1234), arrBytes, 4);
Array::Copy(BitConverter::GetBytes((float)12.34), 0, arrBytes, 4, 4);
// parsing to struct - I want help
TestStruct^ myStruct = gcnew TestStruct();
myStruct->TestInt = BitConverter::ToInt32(arrBytes, 0);
myStruct->TestFloat = BitConverter::ToSingle(arrBytes, 4);
String^ str = Console::ReadLine();
return 0;
}
如何格式化二進制格式已經定義。這帶給我自定義序列化並帶回相同的問題。幾百行BitConverter,還是存在更好的方法? – rozon 2008-11-25 08:44:08