stream.read((char*)&someStruct,sizeof(someStruct));
在C#中是否有类似的方式? BinaryReader仅适用于内置类型.在.NET 4中有一个MemoryMappedViewAccessor.它提供了诸如Read< T>之类的方法.这似乎是我想要的,除了我手动必须跟踪我想要阅读的文件中的位置.有没有更好的办法?
最简单的方法通常是使用BinaryReader读取文件中结构的单独成员,并将值放在类的属性中,即手动将数据反序列化为类实例.
通常它正在读取此操作中的瓶颈文件,因此读取单独成员的小开销不会显着影响性能.