Sim*_*nro 2 c# binary serialization
我想反序列化一个对象,但不知道前面的类.所以,请考虑以下代码......
IFormatter formatter = new BinaryFormatter();
Stream stream = new FileStream("MyFile.bin", FileMode.Open, FileAccess.Read, FileShare.Read);
MyObject obj = (MyObject)formatter.Deserialize(stream);
Run Code Online (Sandbox Code Playgroud)
如果我不了解课程,我该怎么办?比如说,例如"MyFile.bin"是MyObject或MyFoo.如何确定要实例化的对象?
就像是...
if (magic happens here == typeof(MyObject))
MyObject obj = (MyObject) formatter.Deserialize(stream);
else if (more magic happens here == typeof(MyFoo))
MyFoo foo = (MyFoo)formatter.Deserialize(stream);
Run Code Online (Sandbox Code Playgroud)
做就是了:
object result = formatter.Deserialize(stream);
Type t = result.GetType();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3641 次 |
| 最近记录: |